web-dev-qa-db-fra.com

Comment exécuter des fichiers .class sur Windows à partir de la ligne de commande?

J'essaie d'exécuter le fichier .class à partir de la ligne de commande. Cela fonctionne lorsque je déplace manuellement vers le répertoire dans lequel il est stocké, mais lorsque j'essaie quelque chose comme ceci:

Java C:\Peter\Michael\Lazarus\Main

il dit qu'il ne peut pas trouver la classe principale. Y a-t-il une solution à cela autre que la création d'un fichier .jar (je sais que .jar est la meilleure solution, mais en ce moment ce n'est pas celle que je recherche)?

18
AndrejaKo

lanceur d'applications Java (a.k.a Java.exe ou simplement Java) attend un nom de classe comme argument, donc vous ne pouvez pas lui passer un nom de fichier (surtout pas celui qui comprend un répertoire.

Vous pouvez lui indiquer où chercher cette classe en utilisant le -classpath option (ou sa forme abrégée -cp) pourtant:

Java -classpath C:\Peter\Michael\Lazarus\Main
29
Joachim Sauer

En admettant que Main.class n'a pas de déclaration de package:

Java -cp C:\Peter\Michael\Lazarus\  Main

Java recherche les classes dans un "chemin de classe", qui peut être défini sur la ligne de commande via le -cp option.

10

Je viens d'avoir le même problème, j'ai essayé d'exécuter Java hello.class, c'est faux.

La commande doit être Java hello.

N'incluez pas l'extension de fichier. Il recherche un fichier de classe et ajoutera lui-même le nom.

Alors en cours d'exécution 'Java hello.class 'lui dira d'aller chercher' hello.class.class' fichier.

6
Arinomi

Essaye ça:

Java -cp C:\Peter\Michael\Lazarus Main

Vous devez définir le chemin de classe.

3
kgiannakakis