Bonjour,
Je n'arrive pas à compiler un simple HelloWord.java en ligne de commande via powershell.
Mon code source ci-dessous :
Ensuite je lance la pseudo-compilation via la commande javac (powershell)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 public class HelloWord { public static void main(String[] args) { System.out.println("Hello Word"); } }
:
J'obtiens bien mon Bytecode et donc le fichier HelloWord.class (aucun message d'erreur).
Code : Sélectionner tout - Visualiser dans une fenêtre à part javac HelloWord.java
Ensuite je veux l’exécuter via la JVM par cette ligne de commande (powershell) :
J'ai le message d'erreur suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part java .\HelloWord.class
Error: Could not find or load main class .\HelloWord.class
Caused by: java.lang.ClassNotFoundException: /\HelloWord/class
J'ai cherché sur internet et j'ai vu qu'il y avait une solution sur ce même forum à mon problème ici = https://www.developpez.net/forums/d6...igne-commande/
J'ai donc essayé les lignes de commandes suivantes (powershell) :
Juste je demande confirmation :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 java -classpath .\HelloWord.class java - classpath .\HelloWord.class java.exe -classpath .\HelloWord.class java.exe - classpath .\HelloWord.class 'C:\Program Files\Microsoft\jdk-11.0.12.7-hotspot\bin\java.exe' -classpath .\HelloWord.class 'C:\Program Files\Microsoft\jdk-11.0.12.7-hotspot\bin\java.exe' - classpath .\HelloWord.class
La JVM permet d'exécuter le Bytecode ?
Le JDK contient notamment le compilateur Javac qui permet de compiler le code source écrit en Java ?
Je précise que quand je tente de compiler ce programme avec VSC je n'ai pas de problème, donc il ne s'agit certainement pas d'une erreur dans le code source.
Pour localiser mon JDK j'ai rentré les commandes suivantes (powershell) = https://www.delftstack.com/fr/howto/...ation-windows/
Ma version de powershell est (la dernière release) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 where java => aucun retour where java.exe => aucun retour ... La seul qui me donne un retour est la suivante : gcm -all java CommandType Name Version Source ----------- ---- ------- ------ Application java.exe 11.0.12.0 C:\Program Files\Microsoft\jdk-11.0.12.7-hotspot\bin\java.exe
Je comprends pas pourquoi ça ne fonctionne pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 $PSVersionTable Name Value ---- ----- PSVersion 7.2.7 PSEdition Core GitCommitId 7.2.7 OS Microsoft Windows 10.0.19044 Platform Win32NT PSCompatibleVersions {1.0, 2.0, 3.0, 4.0 } PSRemotingProtocolVersion 2.3 SerializationVersion 1.1.0.1 WSManStackVersion 3.0
Merci pour votre aide.
Partager