Java l'exécution d'un programme à l'invite de commande: impossible de trouver ou charger la classe principale
Je suis en train d'apprendre comment compiler et exécuter en utilisant uniquement les lignes de commande dans Windows. Voici l'arborescence des répertoires à partir de la racine:
D:
ActivityOne
- classes
- com
-wat
-sampleapp
-students
StudentE.class
StudentMasterList.class (Main)
- src
-com
-wat
-sampleapp
-students
StudentE.java
StudentMasterList.java (Main)
Le truc, c'est qu'aujourd'hui je suis confus quant à la façon d'exécuter le programme.
J'ai essayé deux choses l'une, où les deux retournés différentes erreurs.
1er essai:
java -classpath classes StudentMasterList
retourné:
Error: Could not find or load main class StudentMasterList
2ème essai:
java -classpath classes/com/wat/sampleapp StudentMasterList
retourné:
Exception in thread "main" java.lang.NoClassDefFoundError: StudentMasterList (wrongname: com/wat/sam
pleapp/StudentMasterList)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
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 sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
Je suis confus après la prochaine tente, toute aide sur comment je dois exécuter la classe principale?
Mise à jour: je devrais courir tous mes commandes à la ActivityOne
niveau.
ActivityOne est Le nom du dossier, pas de son pas d'une application android c'est juste un banal programme de base. J'ai réussi à le faire fonctionner avec votre solution! Mais est-il de toute façon où je peux le faire à la
ActivityOne
dossier? (Ce qui signifie pas d'aller dans d'autres dossiers à l'intérieur de ActivityOne
si vous pouvez demander)OriginalL'auteur Jer Yango | 2013-06-30
Vous devez vous connecter pour publier un commentaire.
La manière correcte est
En d'autres termes, vous ajoutez le répertoire de niveau supérieur dans le chemin, et ensuite utiliser le nom pleinement qualifié de votre classe Java.
Oui, j'avais prévu.
Ouais vous avez raison, la grâce et par la façon dont j'ai oublié de le marquer. Je suis désolé, monsieur. Juste une petite question si.. Si un nom de dossier ont certains espaces, comme
C:\Documents and Settings
comment puis-je le faire fonctionner?Juste placer le chemin d'accès entre guillemets. Voir stackoverflow.com/a/3003908/367273
OriginalL'auteur NPE