我已经在系统环境的路径变量中设置了JAVA路径,但没有定义JAVA_HOME变量,我仍然能够执行我的JAVA程序,为什么会发生这种情况,当JAVA路径是JAVA路径时,不需要JAVA_HOME变量界定?
答案 0 :(得分:3)
对于Java本身,不需要这样的变量。它所关心的是\bin
文件夹的路径在PATH
上。当您想要在控制台上执行Java而只需调用java
时就是这种情况。
否则,正如@CarlosHeuberger所提到的,如果您通过绝对路径调用它,则甚至不需要PATH
变量中的java可执行文件的路径。
我认为其他系统依赖于名为JAVA_HOME
的变量的存在,例如Tomcat或Gradle,以便他们知道Java所在的位置。
虽然有一个明确的JAVA_HOME
变量的好处。更新/升级Java版本后,您只需将该变量指向新的安装文件夹,而无需触及PATH
。