我想知道是否有办法从java中找到运行该程序的java.exe的位置?
我的用例是我试图让Java执行一个需要在本地环境中设置JAVA_HOME的批处理脚本。我正在执行此操作的环境可能没有设置JAVA_HOME甚至路径上的java可执行文件,但我认为JVM知道其可执行文件的位置。
答案 0 :(得分:5)
System.getProperty("java.home");
是一种选择。这显示了我的机器中的以下目录:
C:\ Program Files \ Java \ jdk1.7.0_02 \ jre
答案 1 :(得分:4)
java.home
属性将提供当前运行的JRE的路径,无论安装的是什么,或JAVA_HOME
是什么。请参阅Oracle文档here。
System.getProperty("java.home");