【问题标题】:Is JAVA_HOME variable needed when Java Path is defined in system environment variable?在系统环境变量中定义 Java Path 时是否需要 JAVA_HOME 变量?
【发布时间】:2018-07-08 23:05:32
【问题描述】:

我已经在系统环境的路径变量中设置了 JAVA 路径,但没有定义 JAVA_HOME 变量,但我仍然能够执行我的 JAVA 程序,为什么会发生这种情况,在定义 JAVA 路径时不需要 JAVA_HOME 变量吗?

【问题讨论】:

    标签: java environment-variables


    【解决方案1】:

    对于 Java 本身,不需要这样的变量。它所关心的只是其\bin 文件夹的路径在PATH 上。当您想通过调用java 在控制台上执行 Java 时就是这种情况。

    否则,正如@CarlosHeuberger 所提到的,如果您通过绝对路径调用它,您甚至不需要PATH 变量中的java 可执行文件的路径。

    我认为其他系统依赖于名为 JAVA_HOME 的变量的存在,例如 Tomcat 或 Gradle,以便它们知道 Java 所在的位置。

    虽然有一个显式的JAVA_HOME 变量是有好处的。更新/升级您的 Java 版本后,您只需将该变量指向新的安装文件夹,而无需触摸 PATH

    【讨论】:

    • +1,但只是一个细节:实际上“对于 Java 本身”PATH 无关紧要 - 它可以使用 C:\Program files\Java\jre\bin\java.exe 中的完整路径启动。需要PATH的是操作系统。
    • 其他使用 java 的应用程序可能需要 Java_Home 来定位系统中的 java。需要 Java_Home 变量来定位 java 的示例 Maven。
    猜你喜欢
    • 1970-01-01
    • 2012-03-29
    • 1970-01-01
    • 2015-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多