J'utilise Eclipse pour l'emballer, mais lors de l'exécution de la fenêtre CMD, j'ai signalé l'erreur "Il n'y a pas d'attribut manifeste principal dans activemq.jar" lors de l'exécution.
J'ai recherché en ligne et j'ai constaté que cela était lié au fichier manifeste.mf. Ce fichier ne définit pas le chemin d'accès de la classe où se trouve la méthode principale. Je peux l'utiliser pour ouvrir le package JAR. Comme prévu. Il n'y a qu'une seule ligne à l'intérieur
Version manifeste: 1.0
La classe principale doit être ajoutée. Dans cet exemple, ajoutez ce qui suit:
Classe principale: com.luoluo.testuse.activemq.activemqstatemain
Ci-dessus, il y a quelques points à noter:
1. Classe principale: il doit y avoir un espace entre com.luoluo.testuse.activemq.activemqstatemain, rappelez-vous.
2. Com.luoluo.testuse.activemq est le nom du package de cette classe, et activeMQStateMain est le nom de classe où se trouve la méthode principale. Remarque: .java ou .class ne doit pas être ajouté par la suite.
3. Si vous ne citez pas un package tiers, vous devez appuyer sur Entrée pour laisser le curseur passer à la ligne suivante. Sinon, il y aura toujours une erreur "Il n'y a pas d'attribut de manifeste principal dans activemq.jar". Si un package tiers est référencé, appuyez sur Entrée après le chemin de classe. En bref, après avoir spécifié les paramètres pertinents, appuyez sur Entrée pour laisser le curseur passer à la ligne suivante.
Ce qui précède définit uniquement la classe principale. Si un package tiers est référencé, l'erreur suivante sera signalée:
Exception dans Thread "Main" java.lang.noclassdeffounderror: org / apache / activemq / courtier / jmx / BrokerViewMbean
À l'heure actuelle, le chemin de classe doit être défini dans le fichier manifeste.mf. Dans cet exemple, ajoutez ce qui suit:
Path de classe: lib / activemq-all-5.12.1.jar
Remarque: il existe également un espace entre classe-chemin et lib / activemq-all-5.12.1.jar.
Dans le même temps, dans le même répertoire de niveau du package JAR, créez un nouveau dossier Lib et copiez ActiveMQ-ALL-5.12.1.jar.
Par exemple, dans cet exemple, le package JAR est sous C: / Users / Victor / Desktop, et vous devez créer un nouveau dossier Lib dans le répertoire C: / Users / Victor / Desktop et y mettre le troisième package correspondant.
Le premier est un package en pot emballé, et le second est un dossier Lib, qui contient un package de pot tiers.
Enfin, le contenu du fichier manifeste.mf est le suivant:
Le résultat d'exécution finale est le suivant:
Le contenu ci-dessus est partagé avec vous comment Java cite des forfaits JAR tiers lors de la fabrication de packages JAR. J'espère que vous l'aimez.