我写了一个输出用法提示的程序.它目前回调到最初在命令行输入的主jar文件的路径.
Usage: java -jar path/to/MyJar.jar ...
为了完整起见,我想确保java位也被回显,因为有多种方法可以访问java,(除了单词java之外,还有比/ us / opt / java-的规范路径更短的方法) 1.8.0-U123 /斌/爪哇)
Usage: /us/opt/java7/bin/java -jar MyJar.jar ...
Usage: ./bin/java -jar MyJar.jar ...
Usage: java -jar MyJar.jar ...
# whatever the user typed in
如何确定用于唤起JVM的命令行?
在评估符号链接之前,我想要原始的命令行值.
我没有使用System.getProperty(“java.home”),因为它不尊重原始命令行值,只是JVM的最终“规范”位置. (有一个使用说明,如用法:/us/opt/java-1.8.0-u123/jre/bin/java -jar …会相当冗长,
特别是在命令行上使用简单的java时.)
是否可以使用纯Java代码确定java的命令行位置?
(即不在bash中使用包装脚本)