J'ai construit un pot en utilisant IntelliJ, en définissant la classe principale correctement. Lorsque j'exécute "java -jar foo.jar" à partir de la ligne de commande (Windows), j'obtiens une exception qui prétend que le fichier principal est manquant. La classe principale ressemble à quelque chose comme:NoClassDefFond lors de l'exécution d'un pot
package mypackage;
public class LockUtil {
public static void main(String[] args) {
...
Je reçois l'exception suivante:
Exception in thread "main" java.lang.NoClassDefFoundError: mypackage/LockUtil
Caused by: java.lang.ClassNotFoundException: mypackage.LockUtil
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
Could not find the main class: mypackage.LockUtil. Program will exit.
Le fichier manifeste contient:
Manifest-Version: 1.0
Created-By: IntelliJ IDEA
Main-Class: mypackage.LockUtil
Et le pot contient la structure de répertoire approprié avec le fichier .class.
Désolé, ce fut une erreur dans l'affichage - le nom du paquet est correct si ... (J'ai mis à jour la question) – ripper234