许多基于java的应用程序需要设置JAVA_HOME env变量。这个变量的目的是什么?
答案 0 :(得分:20)
环境变量是包含驱动器,路径或文件名等信息的字符串。
JAVA_HOME环境变量指向计算机上安装Java运行时环境(JRE)的目录。
答案 1 :(得分:16)
目的是指出Java的安装位置。 $JAVA_HOME/bin/java
应该执行Java运行时。
答案 2 :(得分:7)
当您运行Java程序时,您需要首先启动JVM,通常这是通过运行可执行文件来完成的,在Windows上这是 java.exe 。您可以通过多种方式获得该功能,例如只提供完整路径:
C:\somedir\bin\java.exe
或者可能在你的PATH上。
指定一些类文件或包含作为程序的类文件的Jar文件作为命令行参数。但这还不够,java.exe本身需要各种其他资源,尤其是所有Java库。通过设置环境变量JAVA_HOME,可以指定JRE的位置,从而指定所有这些运行时资源。您应该确保您执行的特定Java与JAVA_HOME的设置匹配。
您可能还需要在路径上尽早放置JAVA_HOME\bin
,以便java.exe
生成自己的副本(例如编译JSP)时,它会选择正确的版本。
答案 3 :(得分:5)
答案 4 :(得分:3)
根据@dirai here, select x2.ID,x1.Date,
if(x1.Variable='state',x1.value,null) as `State`,
if(x1.Variable='Country',x1.value,null) as `Country`,
if(x1.Variable='Pin Code',x1.value,null) as `PinCode`
from Table2 x1
left join Table1 x2 on x2.ID=x1.ID
where x2.ID in ('X1','X2') and x1.Variable_Name in
('state','Country','Pin Code')
GROUP BY x2.ID;
并不是Java本身使用的,而是某些第三方工具(例如Apache Tomcat)使用的。但是,大多数应用程序都可以在未设置此变量的情况下运行,但是有些应用程序可能会显示意外行为。
答案 5 :(得分:2)
JAVA_HOME
允许您运行多个Java安装中的任何一个。即使你的PATH中首先有/usr/lib/jvm/java-1.8.0/bin/java
,但是能够说JAVA_HOME=/usr/lib/jvm/java-1.5.0
并且使用默认的“java”来运行程序使用另一个程序是有用的,相反,作为一个问题,环境设置。这允许程序员使用他们需要的java,即使它没有安装在正常的系统位置,并测试或提供与该备用版本的反向兼容性。并且它不容易被另一个已安装的程序在PATH中重置,例如java本身的主要版本更新。
答案 6 :(得分:-1)
JAVA_HOME用于设置一个环境,使您能够在安装JDK(Java Development Kit)后在计算机或PC上运行java程序