无法启动 Play Framework 应用程序
Posted
技术标签:
【中文标题】无法启动 Play Framework 应用程序【英文标题】:Can't start the Play Framework application 【发布时间】:2018-12-14 07:50:05 【问题描述】:我正在使用2.5.x
播放框架,这是我的application.conf
play.http.secret.key="changeme"
play.i18n.langs = [ "en", "en-US", "fr" ]
.....
.....
当我尝试使用以下命令运行应用程序时
go-1.1/bin/go -Dplay.http.secret.key=abcdefghij -Dhttp.port=9999
这给我一个错误:
at play.api.libs.crypto.CryptoConfigParser.get$lzycompute(Crypto.scala:498)
at play.api.libs.crypto.CryptoConfigParser.get(Crypto.scala:465)
at play.api.libs.crypto.CryptoConfigParser.get(Crypto.scala:463)
at com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:81)
at com.google.inject.internal.BoundProviderFactory.provision(BoundProviderFactory.java:72)
at com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:61)
at com.google.inject.internal.BoundProviderFactory.get(BoundProviderFactory.java:62)
at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:38)
at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:62)
at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:104)
....
如果我正在检查crypto.scala:498
,那么它显然是在说“找不到应用程序密钥”。我已经在command line
和applicaiton.conf
中提供了密钥。它有什么问题?
【问题讨论】:
【参考方案1】:我们通常做的是使用配置文件进行生产
在 /conf 中添加 prod.conf 文件
# this include all your standard configuration
include "application.conf"
# you override this key
play.http.secret.key=abcdefghij
使用-Dconfig.file=conf/prod.conf
进行生产运行
【讨论】:
累了,它抛出了同样的错误。顺便说一句,添加 prod.conf 不是强制性的,如果您提供 prod.conf,它将覆盖 application.conf。 prod.conf 顶部的包含在这里允许扩展而不是覆盖。如果这不起作用,则应该缺少一条信息:如何启动服务器?你用 sbt 对吗? 最初,我使用的是激活器命令,但现在我放弃并使用了sbt run
。使用sbt
对我有用。我仍然担心为什么activator
命令停止工作。
原因可能是不再支持激活器:lightbend.com/blog/…【参考方案2】:
您必须更改您的密钥,“abcdefghij”是默认的,但不允许保留此密钥值。你可以放你想要的。
【讨论】:
以上是关于无法启动 Play Framework 应用程序的主要内容,如果未能解决你的问题,请参考以下文章
Play framework 2.3.x Server Error 无法注册类
在“eclipsify”之后,无法从 Eclipse 运行 Play Framework 项目
Play Framework 2.3 - 无法连接到远程数据库 Linux (Play) -> Win 7 (MySQL)