Erreur "Cannot find symbol" en java
Résolu/Fermékasaix Messages postés 4 Date d'inscription samedi 9 juillet 2022 Statut Membre Dernière intervention 10 juillet 2022 - 10 juil. 2022 à 02:04
- Erreur "Cannot find symbol" en java
- Erreur 0x80070643 - Accueil - Windows
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
2 réponses
9 juil. 2022 à 13:00
Bonjour,
Quelle est la commande que tu as utilisé pour arriver à ce résultat ?
Normalement tu devrais faire :
javac miniApp/event/Event.java miniApp/ToDoList.java
puis :
java miniApp.ToDoList
La confiance n'exclut pas le contrôle
9 juil. 2022 à 14:18
Bonjour,
j'utilise directement la commande d'éxecution "java cheminDuFichier.java" qui compile à la volée et cette façon a toujours fonctionné mais cette fois-ci non. De plus, je ne vois pas vraiment d'erreur dans mon code.
Arborescence des fichiers
| miniApp
| --- ToDoList.java
| | event
| | --- Event.java
IDE utilisé:
Visual Studio Code
Java:
Jdk 17
9 juil. 2022 à 15:00
j'utilise directement la commande d'éxecution "java cheminDuFichier.java" qui compile à la volée et cette façon a toujours fonctionné mais cette fois-ci non.
Dans la documentation c'est bien précisé que cette méthode ne fonctionne que pour un seul fichier.
https://docs.oracle.com/en/java/javase/17/docs/specs/man/java.html#java-command-line-argument-files
java [options] source-file [args ...]
source-file
Only used to launch a single source-file program. Specifies the source file that contains the main class when using source-file mode. See Using Source-File Mode to Launch Single-File Source-Code Programs
Pour le cas général il faut se rapporter aux commandes que j'ai indiqué avec la commande javac qui compile les fichiers .java en .class et la commande java qui exécute les fichiers .class
9 juil. 2022 à 15:18
Je comprends bien mais mon problème ne vient probablement pas d'une erreur de commande car sur les mêmes fichiers, il y a 2 jours, ceux-ci se lançaient très bien. Dans le doute, j'ai essayé en compilant les fichiers et les éxecutant avec les mêmes commandes que vous avez échangé. Mais rien n'y fait.
Ce qui a changé entre temps, c'est que j'avais incorporé du code graphique avec la lib awt et swing. Et cette erreur est survenue au moment d'incorporer le SwingUtilities.invokeLater()[...]. Du coup j'ai effacé tous les morceaux de code graphique et depuis ce problème persiste.
9 juil. 2022 à 17:42
Je viens de tester sur mon PC, ton code fonctionne et toutes les commandes que j'ai donné sont les bonnes, donc ça devrait fonctionner, voici le détail de mon invites de commandes :
G:\workspace> java -version java version "17.0.3.1" 2022-04-22 LTS Java(TM) SE Runtime Environment (build 17.0.3.1+2-LTS-6) Java HotSpot(TM) 64-Bit Server VM (build 17.0.3.1+2-LTS-6, mixed mode, sharing) G:\workspace> javac --version javac 17.0.3.1 G:\workspace> tree /F Structure du dossier pour le volume G Le numéro de série du volume est 1234-5678 G:. └───miniApp │ ToDoList.java │ └───event Event.java G:\workspace> javac miniApp/event/Event.java miniApp/ToDoList.java G:\workspace> tree /F Structure du dossier pour le volume G Le numéro de série du volume est 1234-5678 G:. └───miniApp │ ToDoList.class │ ToDoList.java │ └───event Event.class Event.java G:\workspace> java miniApp.ToDoList Entrez l'heure de debut: 8 Entrez l'heure de fin: 15 Entrez l'evenement pour 8h-15h: cours [8] [15] [cours]
10 juil. 2022 à 02:04
Merci pour ta réponse détaillée. Après quelques essaies, j'ai réussi à comprendre d'où provenait mon erreur. J'utilisais le chemin "java ToDoList.java" en étant dans le répertoire miniApp au lieu de "java miniApp.ToDoList" dans le répertoire src avec un sous-répertoire miniApp. Enfin du moins j'ai réussi à lancer comme ça.