我有一个Play 2.3应用程序,由一个包含2个子项目的根组成。在本地运行时,一切都很好。
当我将应用程序部署到Heroku时,它错误地认为我的一个子项目是主项目,所以我只能访问该子项目的路由。
我读了一些关于按字母顺序排序的内容,所以我负责重新命名我的项目root
,rootAdmin
和rootCommon
,但这没什么用。
有没有办法告诉Heroku哪一个是真正的"主要"项目?也许通过build.sbt
?
答案 0 :(得分:0)
这与Heroku没有任何关系。问题原来是我子项目的application.conf中的一个条目:
application.router=rootadmin.Routes
不知何故,我的子项目的application.conf在主application.conf之后被读取,并且上面的条目优先 - 所以这就是为什么只有子项目的路由可以访问。
我添加了以上一行,以便能够将我的子项目开发为一个独立的应用程序 - 所以我需要以某种方式运行它。现在我看到我跳过了提及此用例的文档的一部分:
要在子项目的开发模式中使用一组特定设置,将这些设置放入构建文件中会更好,例如: Keys.devSettings + =(“application.router”,“admin.Routes”)。
这意味着此行现在是build.sbt
的一部分,不需要驻留在application.conf