我有一个 Spring 季启动应用程序,我想使用应用程序引擎maven插件在Google应用程序引擎上部署 .
一切正常,但我找不到谷歌应用引擎为 Spring 季启动应用加载正确的application.properties文件的方法 .
我有application-prod.properties,application-default.properties和application-test.properties . 在本地,我可以轻松选择开始使用的环境/配置文件
mvn appengine:run -Dspring.profiles.active=prod
但是当我尝试为部署工作做同样的事情时,比如说
mvn appengine:deploy -Dspring.profiles.active=prod
这不起作用 . 它不会加载application-prod.properties,但会回退到application-default.properties .
我是否会错过理解某些内容或者应该这样做?如果由于Google应用引擎只是在没有传递任何参数的情况下启动战争就行不通,那么有没有办法为Google上的应用/服务定义环境变量,我可以存储数据库网址和特定于环境的凭据等内容?
谢谢你的帮助 .
2 回答
尝试使用
jvmFlags
参数启动具有所需属性的应用程序,https://cloud.google.com/appengine/docs/standard/java/tools/maven#development_server_goals如果使用 App Engine flexible environment ,请在
app.yaml
中添加以下内容这将由运行时添加到JVM启动命令中 . 有关openjdk-runtime,请参阅documentation . 默认情况下,您的应用程序使用jetty-runtime,它继承了openjdk-runtime中的选项 .
如果使用 App Engine standard environment ,请在
appengine-web.xml
中添加以下内容: