Luk*_*asz 5 spring jetty profiles
我正在寻找一种以编程方式在jetty中设置spring配置文件的方法,以便服务器上的war文件使用给定配置文件的应用程序,这是我的代码:
final WebAppContext context = new WebAppContext();
context.setLogUrlOnStart(true);
context.setWar("target/deployables/myapp-rest/myapp-rest.war");
context.setContextPath("/" + TEST_APP_CONTEXT);
context.setParentLoaderPriority(true);
server.setHandler(context);
server.start();
Run Code Online (Sandbox Code Playgroud)
我尝试了几件事,但似乎都没有工作......我需要通过 -Dspring.profiles.active=myProfile
这是使用 Jetty 9.3 进行测试的,但webdefault.xml
似乎也适用于较低版本(尽管它的位置可能有所不同)。
转到$JETTY_HOME/etc
并打开webdefault.xml
。context-param
在文件中搜索。将此代码添加到下面的某处:
<context-param>
<param-name>spring.profiles.default</param-name>
<param-value>prod</param-value>
</context-param>
Run Code Online (Sandbox Code Playgroud)
web.xml
如果您的(在your-app.war
文件中)不包含 this ,这将起作用context-param
。
否则你也可以使用override-web.xml
(文档),但你需要配置它jetty-web.xml
并且jetty-web.xml
必须将其捆绑在战争中......所以YMMV,但我不想改变我的战争,这webdefault.xml
对我来说是一个更简单的解决方案。
归档时间: |
|
查看次数: |
1119 次 |
最近记录: |