【发布时间】:2016-07-29 04:12:23
【问题描述】:
我编写了一个输出使用提示的程序。它当前回显了最初在命令行中输入的主 jar 文件的路径。
Usage: java -jar path/to/MyJar.jar <params> ...
为了完整起见,我想确保java 位也被回显,因为有多种访问java 的方法,(除了java 这个词和更短的比规范路径到/us/opt/java-1.8.0-u123/bin/java)
Usage: /us/opt/java7/bin/java -jar MyJar.jar <params> ...
Usage: ./bin/java -jar MyJar.jar <params> ...
Usage: java -jar MyJar.jar <params> ...
# whatever the user typed in
如何确定用于调用 JVM 的命令行?
在评估符号链接之前,我想要原始命令行值。
我没有使用System.getProperty("java.home"),因为它不尊重原始命令行值,只是 JVM 的最终“规范”位置。 (有一个像Usage: /us/opt/java-1.8.0-u123/jre/bin/java -jar ... 这样的使用说明会很冗长,
尤其是在命令行上使用简单的java 时。)
是否可以使用纯 Java 代码确定 java 的命令行位置?
(即在bash 中不使用包装脚本)
【问题讨论】:
-
我想知道为什么投反对票。是因为问题不清楚还是因为它是重复的?我在询问之前进行了搜索,但我不断得到无法解决这个特定问题的结果。
-
目前尚不清楚您是否知道其他选项,或者您正在尝试做的事情是链接问题中投票最多的答案无法做到的。
-
好吧,我不知道链接的问题。现在我已经看过了,我将编辑我的问题以澄清。
标签: java command-line