我可以指定运行我的程序的Java版本

时间:2015-11-05 11:28:12

标签: java version

我有一个在JRE 1.6上运行的旧程序,当你升级到该程序将无法登录时。

我已着手升级它,但似乎无法使其与后来的JRE版本兼容。 问题是客户不断升级其运行的机器上的JRE,即使被告知不要。

是否可以在机器上安装2个JRE并指定在运行程序时使用哪个JRE?

我在想如果类路径指向JRE 1.8,但是我没有使用类路径,而是使用JRE 1.6的完整地址,那会有用吗?

编辑:

java -Djava.library.path=lib/ -classpath .;lib/Serialio.jar;lib/log4j.jar;lib/client.jar -Djava.security.policy=java.policy 192.168.0.10 1098

这是我的bat文件,我尝试用C:\ jre1.5 / bin / java.exe -jar替换-classpath但是它认为我的主类的名称不是新的类路径,我是什么做错了

1 个答案:

答案 0 :(得分:1)

  

是否可以在机器上安装2个JRE并指定在运行程序时使用哪个JRE?

,如果您执行jar,则可以从特定的JRE

运行它
path_to_jre/bin/java.exe -jar YourApp.jar

只需将上述行放在.bat文件中,然后双击即可执行定义了java版本的程序,让您的客户可以毫无问题地为其他应用程序升级java。

  

java -Djava.library.path=lib/ -classpath .;lib/Serialio.jar;lib/log4j.jar;lib/client.jar -Djava.security.policy=java.policy 192.168.0.10 1098是我的bat文件,我尝试用-classpath替换path_to_jre/bin/java.exe -jar它认为我的主要类的名称不是新的类路径,我做错了什么< / p>

你的bat文件必须与此类似(java的路径是我自己的):

C:\Program Files\Java\jre6\bin\java 
       -Djava.library.path=lib/ 
       -classpath .;lib/Serialio.jar;lib/log4j.jar;lib/client.jar 
       -Djava.security.policy=java.policy 192.168.0.10 1098