jnlp webstart nativelib:如何为os指定不同的体系结构

时间:2009-11-09 20:48:19

标签: java java-web-start jnlp

在java webstart文件(jnlp)中,您可以指定nativelib标记来加载二进制文件。您还可以通过指定os属性为不同的操作系统指定不同的操作系统。

例如:

<resources os="Linux">
    <nativelib href="....jar"/>
</resources>

<resources os="Windows">
    <nativelib href="....jar"/>
</resources>

<resources os="Mac OS X">
    <nativelib href="....jar"/> 
</resources>

但我如何为不同的架构指定甚至不同的二进制文件?例如win32和win64或linux 32和linux 64bit。操作系统。我在哪里可以找到os属性的选项列表?

3 个答案:

答案 0 :(得分:7)

确定您基本上需要os.arch属性。另请参阅http://lopica.sourceforge.net/os.html以获取完整列表。您可以使用arch元素的<resources>属性。

答案 1 :(得分:3)

根据http://jcp.org/aboutJava/communityprocess/mrel/jsr056/index3.html

os属性:指定应考虑其资源元素的操作系统。如果该值是os.name系统属性的前缀,则可以使用resources元素。未指定该属性,它匹配所有操作系统。“

因此,您需要对要部署到的平台上的os.name系统属性的值进行一些调查。

答案 2 :(得分:1)

以下是Windows的一个示例:

<resources os="Windows" arch="x86">
    <nativelib href="....jar"/>
</resources>
<resources os="Windows" arch="x86_64">
    <nativelib href="....jar"/>
</resources>
<resources os="Windows" arch="amd64">
    <nativelib href="....jar"/>
</resources>

https://stackoverflow.com/a/1703973/361855提供了一个链接,其中包含其他平台的架构值。