Java—使用另一个jvm运行类的命令行
我的机器上默认有Java1.8.0131,但也有Java9,所以我可以用jdk-9运行编译类吗?有没有可能发生这样的事情:Java—使用另一个jvm运行类的命令行,java,Java,我的机器上默认有Java1.8.0131,但也有Java9,所以我可以用jdk-9运行编译类吗?有没有可能发生这样的事情: java -v path/to/jdk-9 myClass 谢谢java命令实际上调用了JVM。JVM启动,读取您的类,并运行您告诉它运行的内容 有无方法告诉“启动”JVM实际使用不同的JVMjava不是某种“稍后”调用二进制文件的包装器。启动JVM的已经是二进制文件了 换句话说:你所要求的是不可能的。一个简单的解决方法是在命令行上定义“别名”,比如java-8
java -v path/to/jdk-9 myClass
谢谢java命令实际上调用了JVM。JVM启动,读取您的类,并运行您告诉它运行的内容 有无方法告诉“启动”JVM实际使用不同的JVM
java
不是某种“稍后”调用二进制文件的包装器。启动JVM的已经是二进制文件了
换句话说:你所要求的是不可能的。一个简单的解决方法是在命令行上定义“别名”,比如java-8启动java8安装,java-9指向其他安装 默认情况下,java命令调用已安装的java版本,可通过以下命令进行检查: 一种方法是更新java:
sudo update-alternatives --config java.
上述命令的O/p:
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-8-oracle/jre/bin/java 1081 auto mode
* 1 /usr/lib/jvm/java-8-oracle/jre/bin/java 1081 manual mode
Press <enter> to keep the current choice[*], or type selection number:
选择路径优先级状态
------------------------------------------------------------
0/usr/lib/jvm/java-8-oracle/jre/bin/java 1081自动模式
*1/usr/lib/jvm/java-8-oracle/jre/bin/java 1081手动模式
按可保留当前选项[*],或类型选择编号:
在您的情况下,Java9也将出现。更新java版本并运行java命令
或者您可以直接调用您的java9脚本,您可以找到${java9 Installation Directory}/jre/bin/java-v类
PS:上面对命令的描述基于ubuntu。否。但是您可以使用标准方式:
/path/to/jdk-9/bin/java MyClass
否,此命令不可能。但是您可以使用Java9安装附带的java命令运行该类。如果我没有弄错的话,您还可以将默认的java版本更改为始终使用jdk-9您使用的是Windows Mac还是Linux