J'écrivais un programme simple en utilisant une application Java (pas une application qui a des projets, mais une application dans un projet; .java ) qui a un seul cadre. Les deux fichiers sont .java, donc je ne peux pas écrire un manifeste requis par le JAR.
Le MyApp.java commence comme une classe avec le paquet, les importations puis la classe publique MyApp
et a une fonction principale, mais il est encore .java fichier! Je l'écris dans JDeveloper 11g si cela aide.
Des idées pour créer un JAR à partir de ces fichiers?
Réponses:
Ouvrez une invite de commande.
Allez dans le répertoire où vous avez vos fichiers .java
Créer une construction de répertoire
Exécutez la compilation java à partir de la ligne de commande
s'il n'y a pas d'erreur, dans le répertoire de construction, vous devriez avoir votre arborescence
allez dans le répertoire de construction et effectuez un
Pour ajouter des commutateurs de ligne de commande manifest check jar
la source
jar cfe Main.jar Main *
(je suis cependant confus, j'ai dû mettre le nom de la classe principale après le nom du fichier de sortie.)Simplement avec la ligne de commande:
Bien sûr, les IDE évitent d'utiliser le terminal de ligne de commande
la source
.class
de myApp. Donc c'étaitjar -cf myJar.jar myApp.class
Ok c'est la solution que j'aurais aimé trouver, à la place je l'écris ici:
Commencez par créer la structure de répertoires correspondant au package défini pour le fichier .java, si c'est my.super.application créez le répertoire "my" et à l'intérieur "super" et à l'intérieur le fichier .java "App.java"
puis à partir de la ligne de commande:
javac -cp /path/to/lib1.jar:/path/to/lib2.jar path/to/my/super/App.java
Notez que ce qui précède inclura plusieurs bibliothèques, si sous Windows utilisez "," pour séparer plusieurs fichiers sinon sous GNU / Linux, utilisez ":" Pour créer un fichier jar
ce qui précède créera l'application avec son manifeste correspondant indiquant l'application comme classe principale.
L'inclusion des bibliothèques requises dans le fichier jar n'est pas possible en utilisant les paramètres de ligne de commande java ou jar.
Vous pouvez à la place:
les noms file.reference se trouvent dans le fichier project.properties après avoir ajouté les bibliothèques à l'EDI Netbeans.
la source
Souvent, vous souhaiterez spécifier un manifeste, comme ceci:
Ce qui se lit comme suit: "créer un fichier jarFilename détaillé manifestFilename", suivi des fichiers que vous souhaitez inclure. Verbose signifie imprimer des messages sur ce qu'il fait.
Notez que le nom du fichier manifeste que vous fournissez peut être n'importe quoi, car
jar
il le renommera automatiquement et le placera dans le bon répertoire du fichier jar.la source
Cela peut être fait sans terminal, directement depuis IDE. Netbeans, par exemple.
la source
Voici une autre façon sophistiquée de faire cela:
Ce qui récupérera tous les fichiers .java (
ls | grep .java
) de votre répertoire actuel et les compilera dans .class (xargs -I {} javac {}
), puis créera le fichier jar à partir des classes précédemment compilées (jar -cf myJar.jar *.class
).la source
Le moyen le plus convivial pour les débutants de compiler un JAR à partir de votre code Java est peut-être d'utiliser un IDE (environnement de développement intégré; essentiellement un logiciel convivial pour le développement) comme Netbeans ou Eclipse.
Vous pouvez toujours faire tout cela très facilement avec la ligne de commande. Assurez-vous que vous êtes dans le même répertoire que les fichiers ciblés avant d'exécuter une commande comme celle-ci:
... en remplaçant respectivement "YourApp" et "YourJar" les noms propres de vos fichiers.
la source