2009-09-29 12 views

Répondre

5

Vous pouvez le faire facilement avec Ant:

<jar jarfile="MyJar.jar" basedir="bin"> 
    <manifest> 
    <attribute name="Class-Path" value="lib/lib1.jar lib/lib2.jar lib/lib3.jar"/> 
    <attribute name="Built-By" value="me"/> 
    <attribute name="Main-Class" value="mypackage.Myclass"/> 
    </manifest> 
</jar> 

Cela ajoutera toutes les entrées appropriées au fichier Manifest. Pour être en mesure d'exécuter le pot, vous devez également créer un dossier lib et placer tous les pots de dépendance là-bas:

myjar.jar 
lib/lib1.jar 
lib/lib2.jar 
lib/lib3.jar 
+0

L'ordre des attributs semble avoir de l'importance. Le chemin de classe doit apparaître avant la classe principale. – dacracot

0

Regardez l'aide d'un outil d'emballage tels que IzPack ou un outil d'emballage tels que JSmooth

1

Vous aurez besoin d'ajouter un fichier MANIFEST.MF au JAR pour votre application, (sous le répertoire META-INF - si vous utilisez l'outil de ligne de commande 'jar', il s'assurera que le fichier se trouve au bon endroit). Il devra contenir deux attributs (au moins):

  • Main-Class: [le nom complet de la classe dans votre application qui a une méthode principale]
  • Class-Path: [la liste des dépendances JAR pour votre application]

Plus de détails sur les fichiers manifestes dans les fichiers JAR peuvent être trouvés ici: http://java.sun.com/docs/books/tutorial/deployment/jar/manifestindex.html

Si vous utilisez un outil de construction comme Apache Maven vous trouverez peut-être qu'il est capable de générer cette pour toi.

0

Si vous utilisez Maven le plug-in de montage va le faire pour vous très simplement: http://maven.apache.org/plugins/maven-assembly-plugin/howto.html

Sinon, vous devrez suivre les instructions du didacticiel de fichier JAR: http://java.sun.com/docs/books/tutorial/deployment/jar/index.html et la création d'un fichier manifeste, y compris votre classe principale comme Main-Class: [classname] et répertoriant vos fichiers externes comme Class-Path: theirJar1 theirJar2 etc.

1

Vous souhaitez définir l'attribut Class-Path dans le fichier manifeste de votre fichier JAR.

This page devrait vous donner un bon point de départ.

2

Utiliser plugin Eclipse appelé « fatjar »

c'est mise à jour du site

http://kurucz-grafika.de/fatjar

juste un clic droit sur le projet et utiliser l'option fatjar, étape suivante vous permet de choisir quelle bibliothèque sera inclus dans * .jar

Questions connexes