根据几个帖子(例如HOME )和搜索一些可用的文档,JAVA_HOME与JVM本身没有任何关系,也没有被它使用。
然而,有些软件要求设置它,很可能正是系统属性java.home所具有的值。假设java在PATH中,除了编写和编译这几行代码以综合属性之外,还有什么办法将这个系统属性从在PATH/Unix/Mac之间可移植的JVM中提取出来呢?
我真的希望一些不太为人所知的命令行选项或其他可爱的技巧。假设jdk (而不是jre)是可以的。关于jps,jstack,jidunnothatitevenexits的一些自我引用的东西怎么样?
Java-9中的jshell使它变得简单.但是我需要一个Java-8,甚至-7的解决方案。:-(
发布于 2017-09-26 20:34:18
纳什霍恩JavaScript引擎可在Java 8中使用:
$ jjs
jjs> print(java.lang.System.getProperty("java.home"))那是JavaScript,不是Java代码。;-)
也在Java 9中工作。遗憾的是,Java 7中没有。
更新
我认为这在7,8和9中有效。
jrunscript -e 'print(java.lang.System.getProperty("java.home"))'更新2
允许颠倒引号字符的角色..。
jrunscript -e "print(java.lang.System.getProperty('java.home'))"..。显然,对于PowerShell来说,这是必要的。
https://stackoverflow.com/questions/46434824
复制相似问题