gpt4 book ai didi

java - 如何将系统属性传递给作为 Windows 服务运行的 Tomcat 7 中托管的 Web 应用程序?

转载 作者:可可西里 更新时间:2023-11-01 13:51:32 27 4
gpt4 key购买 nike

网上有很多地方表明可以通过以下任何(或全部)方法轻松实现:

  1. 通过CATALINA_OPTS
  2. 通过JAVA_OPTS
  3. 通过TOMCAT_OPTS
  4. set 语句放在 tomcat 的 bin 文件夹内的 setenv.bat 文件中

我的问题是,我已经尝试了上述所有方法,但我的网络应用程序仍然看不到我的系统属性!

这是我正在做的:

  1. 停止tomcat7服务
  2. 在系统环境中设置CATALINA_OPTS=-Dabc.def=true
  3. 在系统环境中设置JAVA_OPTS=-Dabc.def=true
  4. 在系统环境中设置TOMCAT_OPTS=-Dabc.def=true
  5. 将以上所有内容放入c:\Program Files\Apache Software Foundation\Tomcat 7.0\bin\setenv.bat(似乎完全多余,但以防万一)
  6. 启动tomcat7服务
  7. 使用 Process Explorer 工具检查 tomcat7 进程的环境 - 环境是正确的,我确实看到了 CATALINA_OPTSJAVA_OPTS 以及 TOMCAT_OPTS 等于 -Dabc.def=true
  8. 运行我的网络应用程序,这是一个简单的 servlet,将所有系统属性转储到响应流 - abc.def 不在其中

请把我从痛苦中解救出来,告诉我该怎么做。

最佳答案

对于 Tomcat 服务,启动设置存储在 Options 下的注册表中关键在:

HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Procrun 2.0\Tomcat<X>\Parameters\Java

(在需要时替换适当的 Tomcat 版本)。

编辑:

在 64 位 Windows 上,注册表项是:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\Procrun 2.0\Tomcat<X>\Parameters\Java

即使 Tomcat 在 64 位 JVM 下运行。

关于java - 如何将系统属性传递给作为 Windows 服务运行的 Tomcat 7 中托管的 Web 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8609998/

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