Поддерживает ли Play отдельные файлы маршрутов для каждой среды - dev, uat, prod?

Возможно ли иметь следующую маршрутизацию в режиме разработки:

GET  /       controllers.Assets.at(path="/public/ui/dev", file="index.html")
GET  /*file  controllers.Assets.at(path="/public/ui/dev", file)

и следующее в производстве:

GET  /       controllers.Assets.at(path="/public/ui/prod", file="index.html")

Ответы на вопрос(3)

Решение выше работает хорошо, но означает, что вы дублируете маршруты, например нестатические ресурсы в вашемroutes а такжеprod.routes файлы.

Если вы хотите сохранить один файл маршрутов, вы можете пойти по пути, которыйjohanandren предлагает. Я использую этот метод довольно успешно, и опубликовал суть этого метода вhttps://gist.github.com/drcharris/2e3518b212adfa1b6a7f

 cessationoftime07 дек. 2016 г., 22:09
Обновленная версия ConfigurableAssets для PlayFramework 2.5gist.github.com/cessationoftime/...

Не из коробки. Но здесь у вас есть две идеи о том, как вы можете достичь той же функциональности:

написать тонкую оболочку вокруг Assets.at, которая смотрит на текущий env и обрабатывает его по-другому, а затем просто вызывает Assets.at с измененным путемпереопределить, как выполняется маршрутизация в Global, это немного сложно сделать, если вы хотите продолжать использовать DSL-маршруты для файлов prod и dev, как вы должны выяснить, чтобы их скомпилировать
Решение Вопроса

Да, это возможно. Объявите ваши dev-маршруты вconf/routes, но объявите ваши производственные маршруты вconf/prod.routes, Затем, есть файл производственной конфигурации,conf/prod.confи поместите это в это:

include "application.conf"

application.router = "prod.Routes"

Теперь, когда вы запускаете приложение в производство, просто используйте:

path/to/myapp/bin/myapp -Dconfig.resource=prod.conf -Dhttp.port=...
 rink.attendant.603 нояб. 2014 г., 20:17
Можно ли использовать этот метод, если оба файла маршрута определяют путь к одному и тому же методу (например,GET / controllers.News.foo())? Я'я получаюReverseNews is already defined as class ReverseNews ошибка компиляции ...
 reen06 февр. 2014 г., 11:16
Привет Джеймс, спасибо за ваш ответ, это сработало хорошо.

Ваш ответ на вопрос