我有一个运行三个应用程序的 tomcat 服务器。 对于其中一个,我需要传递系统变量 (-D),例如 spring active profiles 和其他一些项目特定变量。 我已经阅读了文档,其中一个解决方案是在 $CATALINA_BASE/localhost/文件夹中创建一个 context.xml(据我所知它必须与 war 文件同名)
我试过这样做
<Context>
<Parameter name="spring.profiles.active" value="profile"
override="false"/>
<Parameter name="variable" value="value"
override="false"/>
</Context>
但是在 tomcat 重新启动后,应用程序似乎没有启动,实际上什么也没有发生。
由于 tomcat 服务器上有 3 个应用程序,我无法使用 setenv.sh 并且必须专门为此项目传递参数。
您是否知道我做错了什么以及如何将系统变量传递给 tomcat 服务器上的特定应用程序?
感谢您的建议
最佳答案
我的错误是我将文件命名为 context.xml 而不是 applicationName.xml 文件本身看起来像:
<Context>
<Environment name="spring.profiles.active" value="profile" type="java.lang.String" override="false" />
关于java - 将系统变量传递给部署到 tomcat 的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58306349/