将系统变量传递给部署到tomcat的应用程序

时间:2019-10-09 14:22:43

标签: java spring-boot tomcat

我确实有一个运行三个应用程序的tomcat服务器。 对于其中之一,我需要传递系统变量(-D),例如弹簧活动轮廓和其他一些项目特定的变量。 我已经阅读了文档,解决方案之一是在$ 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服务器上的特定应用程序有任何想法吗?

感谢您的建议

1 个答案:

答案 0 :(得分:0)

我的错误是我已将文件命名为context.xml而不是applicationName.xml 文件本身看起来像:

<Context>
<Environment name="spring.profiles.active" value="profile" type="java.lang.String" override="false" />