gpt4 book ai didi

java - Play 应用程序配置未加载?

转载 作者:搜寻专家 更新时间:2023-11-01 02:57:56 26 4
gpt4 key购买 nike

我的 Play 模块的配置没有加载。

我的构建和配置文件的项目结构如下所示:

/project/modules/my_module/build.sbt
/project/modules/conf/my_conf.conf

我运行这个项目:

cd /project/modules/my_module
sbt "run -Dconfig.resource=conf/my_conf.conf"

当我读取设置时,它是空的:

String mySetting = Play.application().configuration().getString("my_setting")

从调试应用程序来看,似乎我的任何设置都没有加载到 Play.application.configuration() 中。

我使用 System.getProperty("user.dir") 来验证工作目录是 /project/modules/my_module/ 所以 conf/my_conf .conf 应该是正确的路径。任何建议如何解决这个问题?

最佳答案

您的类路径中没有默认配置文件 application.conf,请尝试将 my_conf.conf 重命名为 application.conf 并运行您的使用 sbt run 的应用程序,或者如果您使用的是自定义配置文件,请按照以下过程加载文件

使用 -Dconfig.resource

这将在应用程序类路径中搜索替代配置文件(您通常在打包前将这些替代配置文件提供到您的应用程序 conf/目录中)。 Play 会查看 conf/因此您不必添加 conf/.

$ /path/to/bin/<project-name> -Dconfig.resource=prod.conf

所以尝试使用 sbt run -Dconfig.resource=my_conf.conf 运行应用程序

这两个 Play 文档将帮助您获得更好的想法 https://www.playframework.com/documentation/2.6.x/ConfigFile https://www.playframework.com/documentation/2.6.x/ProductionConfiguration

关于java - Play 应用程序配置未加载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47677887/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com