从JAVA检查/获取JAVA_HOME变量

从JAVA检查/获取JAVA_HOME变量,java,openjdk,java-home,Java,Openjdk,Java Home,在Java程序中,如何读取Java\u HOME变量(确保设置正确)? 类似地,如何获取bin文件夹的路径?也就是说,通常通过以下方式在Windows中设置路径: path%path%;%JAVA_HOME%\bin 注意:我使用的是OpenJDK build by。试试看 String javaHome = System.getProperty("java.home"); 用于读取值 System.getenv("JAVA_HOME"); 您必须使用System.getenv(“JAVA

在Java程序中,如何读取
Java\u HOME
变量(确保设置正确)? 类似地,如何获取
bin
文件夹的路径?也就是说,通常通过以下方式在Windows中设置路径:

path%path%;%JAVA_HOME%\bin

注意:我使用的是OpenJDK build by。

试试看

String javaHome = System.getProperty("java.home");
用于读取值

 System.getenv("JAVA_HOME");

您必须使用
System.getenv(“JAVA_HOME”)

在windows上,您可以像在cmd中一样从应用程序执行
set
命令,然后处理输出:

Process p;
p = Runtime.getRuntime().exec("set JAVA_HOME");

BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
但正如其他人所回答的那样

System.getenv("JAVA_HOME");
这样会更好


但是,如果任何人需要替代方案,请参见上文:D

由于PATH和JAVA_HOME都是环境变量,您应该能够以类似的方式读取它们的值:

String javaHome=System.getenv(“JAVA_HOME”);
字符串路径=System.getenv(“路径”);

“我如何阅读”知道这一点,你想实现什么功能?@AndrewThompson:我正在使用便携式R发行版,我也需要便携式Java(为了使用一些R-Java接口)。我复制portabla R文件夹中的OpenJDK文件,然后需要设置它们的路径
^
必需:找不到参数
字符串
原因:实际参数列表和形式参数列表长度不同
1错误
抱歉,这是getProperty,不是getProperties。谢谢,System.getenv(“JAVA_HOME”)不适用于我,因为变量未导出(非环境变量)Java属性和环境变量是两个不同的东西,从这个问题上看,他似乎特别要求后者。