j'ai créé un fichier a.java contenant package b
j'ai créé un fichier b.java contenant import b.*
je les ais placé dans le dossier de l'utilisateur
je les compile sépatément javac a b
quand j'execute b j'ai l'erreur classe introuvable : java b
merci
j'ai créé un fichier a.java contenant package b
j'ai créé un fichier b.java contenant import b.*
je les ais placé dans le dossier de l'utilisateur
je les compile sépatément javac a b
quand j'execute b j'ai l'erreur classe introuvable : java b
merci
Hello,
on ne met pas les fichiers où on veut. Si ta classe A déclare package b; alors elle doit être placée dans le package b et pas ailleurs.
Concrètement ça veut dire que si tu as deux classes A et B de ce style :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 package c; public class A { }alors à la racine de ton programme, tu dois avoir :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 import c.*; public class B { private A a = new A(); }
- le fichier B.java : code source de ta classe B
- le répertoire c : pour mettre tout ce qu'il y a dans le package c
Ce répertoire c doit contenir :
- le fichier A.java : code source de ta classe A
bonjour,
j'ai créé A et B.java en plaçant A.java qui comporte la package c dans le répertoire c
quand je compile javac *.java ./c/*.java c ok
quand j'execute B.java ca me dit qu'il manque void main
si je le rajoute a B a la compilation j'ai une erreur sur la ligne 4 de B
je te remercie de ta patience
B.java:6: error: illegal start of expression
private A a = new A();
^
A.java placé dans le répertoire c
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 package c; public class A { }
B.java placé a la racine
a la racine javac *.java ./c/*.java
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 import c.*; public class B { public static void main(String[] args) { private A a = new A(); } }
la erreur
merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 C:\Users\jm18c>javac *.java ./c/*.java B.java:6: error: illegal start of expression private A a = new A(); ^ 1 error
Une variable locale ne peut pas être private (ni aucune visibilité d'aucune sorte, sa visibilité est locale.)
Enlève le private.
Partager