在Java程序中,我该如何读取JAVA_HOME
变量(以确保它被设置为正确的方式)? 同样,如何获得bin
文件夹的路径?也就是说,该路径通常为Windows设置通过:检查/从Java获取JAVA_HOME变量
path %path%;%JAVA_HOME%\bin
注:我使用的是建立的OpenJDK通过Alexkasko。
在Java程序中,我该如何读取JAVA_HOME
变量(以确保它被设置为正确的方式)? 同样,如何获得bin
文件夹的路径?也就是说,该路径通常为Windows设置通过:检查/从Java获取JAVA_HOME变量
path %path%;%JAVA_HOME%\bin
注:我使用的是建立的OpenJDK通过Alexkasko。
由于两个PATH和JAVA_HOME环境变量,你应该能够以类似的方式来阅读这两个它们的值:
String javaHome = System.getenv("JAVA_HOME");
String path = System.getenv("PATH");
尝试
String javaHome = System.getProperty("java.home");
我得到: ''字符串JAVAHOME = System.getProperties( “java.home”);'' ''^'' ''要求:没有arguments'' ''发现:String'' ''原因:实际和正式的参数列表长度不同'''''''''''' ''1错误'' – antonio 2013-04-30 11:06:06
对不起,它是getProperty,而不是getProperties。 – Thilo 2013-04-30 12:08:49
谢谢,System.getenv(“JAVA_HOME”)不适用于我,因为变量未导出(非环境变量) – golimar 2015-08-26 11:01:20
使用System.getenv()读值。
System.getenv("JAVA_HOME");
你必须使用System.getenv("JAVA_HOME");
在Windows下你可以从你的应用程序执行set
命令,你会在你的CMD做的事后处理输出:
Process p;
p = Runtime.getRuntime().exec("set JAVA_HOME");
BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
但作为回答by others
System.getenv("JAVA_HOME");
woul d是更好的方式。
但是,如果有人需要替代方案,请参阅上文。 :d
*“我怎么能读” *你想什么功能通过了解? – 2013-04-30 10:13:59
@AndrewThompson:我使用的是便携式R发行版,我也需要一个可移植的Java(为了使用一些R-Java接口)。我将OpenJDK文件复制到portabla R文件夹中,然后我需要设置它们的路径。 – antonio 2013-04-30 10:20:36