2009-11-09 2 views
7

dans un fichier java webstart (jnlp), vous pouvez spécifier la balise nativelib pour charger les binaires. Vous pouvez également spécifier d'en charger différents pour différents systèmes d'exploitation en spécifiant également l'attribut os.jnlp webstart nativelib: comment spécifier une architecture différente pour os

par exemple:

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

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

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

mais comment puis-je spécifier même binaires différents pour les différentes architectures? par exemple win32 et win64 ou linux 32 et linux 64bit. systèmes d'exploitation. Où puis-je trouver une liste d'options pour l'attribut os?

Répondre

7

Pour déterminer que vous avez besoin de la propriété os.arch. Voir aussi http://lopica.sourceforge.net/os.html pour une liste complète. Vous pouvez utiliser l'attribut arch de l'élément <resources> pour cela.

3

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

"os attribut: Indique le système d'exploitation pour ce qui devrait être considéré comme l'élément des ressources Si la valeur est un préfixe de la propriété système os.name, l'élément des ressources peut. Si l'attribut n'est pas spécifié, il correspond à tous les systèmes d'exploitation. "

Vous devez donc effectuer une recherche sur la valeur de la propriété système os.name sur les plates-formes sur lesquelles vous souhaitez déployer.

+0

merci cela a du sens. en fait, je soupçonne que quelqu'un dans les profondeurs de l'Internet aurait fait cette enquête et a assemblé une liste des os/architectures les plus courantes – clamp

0

Voici un exemple pour 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 donne un lien avec qui inclut des valeurs d'architecture pour d'autres plates-formes.

Questions connexes