如何指定JRE来运行可执行jar

时间:2015-02-03 12:18:07

标签: java

我正在向客户发送可执行jar文件,客户已经在盒子上安装了JRE 5,JRE 6和JRE 7。我的Jar需要JRE 7才能运行。 在不更改系统PATH(Environment var)的情况下,如何指定要使用的JRE 7?

3 个答案:

答案 0 :(得分:5)

您可以指定所需的JRE的完整路径,例如:

/path/to/jre/bin/java.exe -jar executable.jar

/path/to/jre/bin/javaw.exe -jar executable.jar

如果从shell(脚本)运行此操作,则最好先将JAVA_HOME环境变量设置为(/path/to/jre)之前的正确位置,然后再运行可执行文件。您可以先设置/导出JAVA_HOME,然后将其扩展到Java可执行文件的位置(例如Windows上的%JAVA_HOME%\bin\java.exe)。更多信息here

答案 1 :(得分:2)

我不确定是否有跨平台的方法来实现这一目标。

在Windows上,您可以使用launch4j等工具将jar包装为可以选择适当JRE的.exe

在Mac OS X上,您可以并行安装多个不同的JDK,但只能安装一个公共JRE(至少是已安装的JDK中的最新版本,如果已经自动更新,可能会更新) 。它是用于应用程序包的公共JRE,当在finder中双击JAR时。

答案 2 :(得分:0)

执行此操作的最简单方法是使用Java WebStart启动程序,然后指定您需要适当的新版Java。然后,启动器将在您的系统上找到合适的分布以供使用。

使用javaws还可以轻松地向用户分发新的更新。

警告:多年来,缓存一直是个问题。确保当jar更改内容时,其URL也会更改。