如何使用 JAVA_OPTS 环境变量?

Posted

技术标签:

【中文标题】如何使用 JAVA_OPTS 环境变量?【英文标题】:How do I use the JAVA_OPTS environment variable? 【发布时间】:2011-07-11 15:14:57 【问题描述】:

如何使用JAVA_OPTS 变量来配置网络服务器(linux 服务器)?

如何使用JAVA_OPTS 设置-Djava.awt.headless=true

【问题讨论】:

【参考方案1】:

JAVA_OPTS 是一些服务器和其他 java 应用程序附加到执行java 命令的调用的标准环境变量。

例如在tomcat中定义JAVA_OPTS='-Xmx1024m',启动脚本会执行java org.apache.tomcat.Servert -Xmx1024m

如果你是在 Linux/OSX 上运行,你可以在调用启动脚本之前设置 JAVA_OPTS

JAVA_OPTS='-Djava.awt.headless=true'

这只会在控制台打开时持续。 要使其更永久,您可以将其添加到您的 ~/.profile 或 ~/.bashrc 文件中。

【讨论】:

如果你运行 Spring boot 完全可执行的 jar,你可以通过这个来指定 -D 属性,例如JAVA_OPTS="-Dspring.profiles.active=test" ./myapp.jar【参考方案2】:

刚刚在 Oracle Java 中发现环境变量被称为:JAVA_TOOL_OPTIONS 而不是JAVA_OPTS

【讨论】:

【参考方案3】:

JAVA_OPTS 是 tomcat 在其启动/关闭脚本中用于配置参数的环境变量。

你可以在linux中设置它

export JAVA_OPTS="-Djava.awt.headless=true" 

【讨论】:

【参考方案4】:

JAVA_OPTS不限于Tomcat的Java进程,而是传递给运行在同一台机器上的所有JVM进程。

如果您特别想将 JVM 参数传递给 Tomcat 的 servlet 引擎,请使用 CATALINA_OPTS

【讨论】:

这并不完全正确。许多“JVM 进程”根本不关注 $JAVA_OPTS。例如,没有任何 Oracle java 命令,Apache “mvn”,Apache “ant”,...【参考方案5】:

实际上,你可以,即使接受的答案说你不能。

有一个_JAVA_OPTIONS 环境变量,更多关于它here

【讨论】:

【参考方案6】:

如以下链接所述,您可以在 bin/standalone.conf 中为 Wildfly/JBoss 编辑 JAVA_OPTS

How to increase heap memory for WildFly? Configuring JVM Settings

【讨论】:

以上是关于如何使用 JAVA_OPTS 环境变量?的主要内容,如果未能解决你的问题,请参考以下文章

tomcat 设置环境变量

Java 系统环境变量

将主机的环境变量传递给 dockerfile

dockerfile CMD执行多条命令且需要支持环境变量

如何使用 JAVA_OPTS 在 gitlab-ci.yaml 中设置 Gradle 代理变量

如何使用VS2005输出所有环境变量