【问题标题】:Difference between JAVA_OPTS and JAVA_TOOL_OPTIONS?JAVA_OPTS 和 JAVA_TOOL_OPTIONS 的区别?
【发布时间】:2011-04-25 09:37:18
【问题描述】:

什么时候应该使用这些环境变量?

【问题讨论】:

标签: java


【解决方案1】:

JAVA_TOOL_OPTIONS被一些JDK工具读取,但适用性有限。

JAVA_OPTS 是 Apache Tomcat 和其他一些应用程序使用的约定,但不是 由 Sun/Oracle、AFAIK 发布的任何 JDK 工具直接读取。

来自: https://forums.oracle.com/forums/thread.jspa?messageID=6438415

JAVA_OPTS 不是 java 可执行文件的环境变量 自行识别。相反,包装开始的各种脚本 Java 的 up 经常会使用一个名为 JAVA_OPTS 的环境变量来 配置 java 可执行文件(例如,tomcat 启动脚本 这样做)。

【讨论】:

    【解决方案2】:

    "what is" doc"tool options" doc

    基本上,JAVA_TOOL_OPTIONS 旨在供开发工具、监控工具等使用,而 JAVA_OPTS 用于运行“通用”Java 程序,我认为人们倾向于混合和匹配(来自 Google 的明智地向我展示了示例)。

    【讨论】:

    • 一个真实的例子:TeamCity CI 使用 JAVA_TOOL_OPTIONS 将设置传递给诸如“简单构建工具”(Scala SBT)之类的步进运行器,用户需要使用 JAVA_OPTS 才能不破坏隐式TeamCity 服务器传递的系统参数,例如 - http_proxy 可能是其中之一。
    • 另一个区别是,当定义了 JAVA_TOOL_OPTIONS 时,总是会向标准输出回显一条消息,例如 Picked up JAVA_TOOL_OPTIONS: -XX:+UseG1GC -Xmx4G
    猜你喜欢
    • 2015-04-04
    • 2019-03-29
    • 2012-06-28
    • 2020-10-26
    • 2017-11-08
    • 1970-01-01
    • 2013-08-07
    • 2011-10-20
    相关资源
    最近更新 更多