如何在jnlp文件中指定JRE范围?

时间:2010-06-09 22:12:01

标签: java java-web-start jnlp

我们有一个使用Java Web Start的Java应用程序。 jnlp文件配置为[j2se version =“1.5+”]。因此,如果安装了JRE 1.5和1.6,则应用程序将在1.6上运行。

现在,我们要求应将应用程序限制为仅在范围内运行 - JRE 1.5.0_07到JRE 1.5.0_17

[j2se version =“1.5 *”]无法使用 - 它将始终使用1.5系列中最新的jre启动应用程序。

我可以通过包含href属性来请求确切的产品版本。 [j2se version =“1.5.0_14”href =“http://java.sun.com/products/autodl/j2se”/]

但是如何在jnlp文件中指定特定范围的JRE,以便JWS仅从该范围中获取JRE?因此,如果安装了1.5.0_07,1.5.0_17和JRE 6,它应该在1.5.0_17上运行应用程序。

有没有很好的方法来实现这个目标?

2 个答案:

答案 0 :(得分:3)

我认为你想要的是:

<j2se version="1.5.0_17" />
<j2se version="1.5.0_16" />
<j2se version="1.5.0_15" />
<j2se version="1.5.0_14" />
<j2se version="1.5.0_13" />
<j2se version="1.5.0_12" />
<j2se version="1.5.0_11" />
<j2se version="1.5.0_10" />
<j2se version="1.5.0_09" />
<j2se version="1.5.0_08" />
<j2se version="1.5.0_07" />

请参阅:http://docs.oracle.com/javase/1.5.0/docs/guide/javaws/developersguide/syntax.html#resources

  

j2se元素指定支持应用程序的Java 2 SE运行时环境(JRE)版本,以及标准   Java虚拟机的参数。如果有几个JRE   指定,这表示支持的JRE的优先级列表,   最首选的版本。

我也看过Java 6 / Java 7,看起来它也可以在那里工作。

http://docs.oracle.com/javase/6/docs/technotes/guides/javaws/developersguide/syntax.html#resources

http://docs.oracle.com/javase/7/docs/technotes/guides/javaws/developersguide/syntax.html#resources

答案 1 :(得分:-1)

它不漂亮,但这可能会奏效。

<j2se version="1.5.0_07 1.5.0_08 1.5.0_09 1.5.0_10 1.5.0_11 
1.5.0_12 1.5.0_13 1.5.0_14 1.5.0_15 1.5.0_16 1.5.0_17" />

我打破了这条线,所以你可以阅读它,但它只是jnlp中的一行。