什么是JAVA_HOME? JVM如何找到存储在JAVA_HOME中的javac路径?

时间:2010-01-08 03:25:32

标签: java core

我想知道什么是JAVA_HOME。我在哪里设置javac.exe和java.exe的路径。它在环境变量中。当我从命令提示符编译Java程序时,JVM如何找到javac.exe

9 个答案:

答案 0 :(得分:52)

JVM找不到java.exe。它甚至没有打电话给它。操作系统调用java.exe(在本例中为Windows)。

JAVA_HOME只是一种惯例,通常由Tomcat,其他Java EE应用服务器和构建工具(如Gradle)用于查找Java所在的位置。

从您的角度来看,重要的是Java /bin目录位于PATH上,因此Windows可以找到JDK附带的.exe工具:{{1} },javac.exejava.exe

答案 1 :(得分:13)

设置环境变量

JAVA_HOME=C:\Program Files\Java\jdk1.6.0_24

classpath=C:\Program Files\Java\jdk1.6.0_24\lib\tools.jar

path=C:\Program Files\Java\jdk1.6.0_24\bin

答案 2 :(得分:11)

命令提示符不会使用JAVA_HOME来查找javac.exe,它会使用PATH。

答案 3 :(得分:9)

Java本身不使用

JAVA_HOMEJRE_HOME。某些第三方程序(例如Apache Tomcat)希望将其中一个环境变量设置为JDKJRE的安装目录。如果您没有使用需要它们的软件,则无需设置JAVA_HOMEJRE_HOMEPATH是操作系统(Windows,Mac OS X,Linux)使用的环境变量,它将查找要运行的本机可执行程序。您应该将bin安装目录的JDK子目录添加到PATH,以便您可以使用javacjava命令以及其他{{1}命令提示符窗口中的工具。 礼貌 coderanch

答案 4 :(得分:0)

JAVA_HOME是环境变量(在U​​nix术语中),或PATH变量(在Windows术语中)。许多运行良好的Java应用程序(需要JDK / JRE)运行,查找JAVA_HOME变量以查找可能找到Java编译器/解释器的位置。

答案 5 :(得分:0)

JAVA HOME用于设置JAVA的环境变量。这意味着您将提供一个编译JAVA程序并运行该程序的路径。因此,如果您未设置JAVA HOME(PATH)并尝试在命令提示符下运行Java或任何依赖程序。

您将处理一个错误 javac : not recognized as internal or external command。 现在进行设置,只需打开Java jdk,然后打开bin文件夹,然后复制该bin文件夹的PATH。

现在,转到“我的电脑”,右键单击它->选择属性----->选择高级系统设置----->单击环境变量------>选择新建- ---->在文本框中输入名称,然后将路径粘贴到“值”中。

仅此而已!

答案 6 :(得分:-1)

使用此命令/ usr / libexec / java_home检查JAVA_HOME

答案 7 :(得分:-2)

JAVA_HOME是一个环境变量,设置为计算机上Java目录的位置。 PATH是一个内部DOS命令,用于查找您正在使用的Java版本的/ bin目录。通常它们是相同的,除了PATH条目以/ bin

结尾

答案 8 :(得分:-2)

基本上JAVA_HOME用于设置java的路径。它在windows中使用。它用于多个软件的设置路径,例如java EEANTMaven。 这是解决问题的步骤:

仅适用于核心java设置路径: 路径:"C:\Program Files\Java\jre1.8.0_77\bin"  但是当你使用像ANT那样构建的核心java时,你会在环境中使用JAVE_HOME

按照以下步骤操作:

JAVA_HOME"C:\Program Files\Java\jre1.8.0_77\bin" ANT_HOME"C:\ant\apache-ant-1.9.6"

路径:JAVA_HOMEANT_HOME; 它是设置环境变量的系统方法。