IntelliJ Tomcat 运行 配置没有设置环境变量
IntelliJ Tomcat Run Configuration Does Not Set Environment Variables
我 运行ning Tomcat 8.0.35 on OS X with IntelliJ Ultimate 2016.1.2。我想在调试器下本地 运行 Tomcat 并将我的 Web 应用程序部署到它。我创建了一个本地 Tomcat 服务器 运行 配置。在“部署”选项卡中,我指定了要部署的 WAR 文件。
我的 Web 应用程序需要设置 REDIS_HOST_MM
和 REDIS_PORT_MM
环境变量。我在 运行 配置的 Startup/Connection 选项卡中设置了这些。
Tomcat 启动并部署我的 Web 应用程序,但是未设置环境变量。我可以在我的 Web 应用程序代码的以下行中放置一个断点
String _value = System.getenv(value);
并看到当 value
等于 "REDIS_HOST_MM" 时,调用 returns null
.
如果我将我的服务器选项卡中的虚拟机选项设置为 -DREDIS_HOST_MM=127.0.0.1 -DREDIS_PORT_MM=6379
,我会遇到同样的问题。此外,如果我将启动脚本更改为指向以下 shell 脚本
export REDIS_HOST_MM=127.0.0.1
export REDIS_PORT_MM=6379
/usr/local/Cellar/tomcat/8.0.35/libexec/bin/catalina.sh run
如果我从命令行在 IntelliJ 外部启动 Tomcat,则环境变量设置正确。
这是 IntelliJ 中的错误,还是我应该以其他方式设置环境变量?
(这是 JetBrains 支持问题 699091。)
没关系。用户错误。我没有意识到您必须为 运行 和调试配置分别设置环境变量。我将它们设置为 运行,但我是 运行 调试。
一旦我也为调试配置设置了环境变量,一切正常。
我 运行ning Tomcat 8.0.35 on OS X with IntelliJ Ultimate 2016.1.2。我想在调试器下本地 运行 Tomcat 并将我的 Web 应用程序部署到它。我创建了一个本地 Tomcat 服务器 运行 配置。在“部署”选项卡中,我指定了要部署的 WAR 文件。
我的 Web 应用程序需要设置 REDIS_HOST_MM
和 REDIS_PORT_MM
环境变量。我在 运行 配置的 Startup/Connection 选项卡中设置了这些。
Tomcat 启动并部署我的 Web 应用程序,但是未设置环境变量。我可以在我的 Web 应用程序代码的以下行中放置一个断点
String _value = System.getenv(value);
并看到当 value
等于 "REDIS_HOST_MM" 时,调用 returns null
.
如果我将我的服务器选项卡中的虚拟机选项设置为 -DREDIS_HOST_MM=127.0.0.1 -DREDIS_PORT_MM=6379
,我会遇到同样的问题。此外,如果我将启动脚本更改为指向以下 shell 脚本
export REDIS_HOST_MM=127.0.0.1
export REDIS_PORT_MM=6379
/usr/local/Cellar/tomcat/8.0.35/libexec/bin/catalina.sh run
如果我从命令行在 IntelliJ 外部启动 Tomcat,则环境变量设置正确。
这是 IntelliJ 中的错误,还是我应该以其他方式设置环境变量?
(这是 JetBrains 支持问题 699091。)
没关系。用户错误。我没有意识到您必须为 运行 和调试配置分别设置环境变量。我将它们设置为 运行,但我是 运行 调试。
一旦我也为调试配置设置了环境变量,一切正常。