2011-03-20 2 views
0

salut j'utilise ubuntu et j'ai un petit projet avec plusieurs paquets que j'ai écrits dans l'éclipse. quand je suis en train de compiler (exécuter javac) à partir du terminal i obtenir de nombreuses erreurs comme:essayant de compiler après avoir utilisé l'éclipse et ayant des problèmes d'importation

Writeable.java:14: cannot find symbol 
symbol : class IllegalFilterArgumentException 
location: class oop.ex1.filters.Writeable 
     throw new IllegalFilterArgumentException(); 

maintenant tout éclipse était bien. On m'a dit que c'est parce que j'ai besoin de lancer javac à partir d'un répertoire qui peut voir tous les fichiers java dans mon projet, mais cela n'a pas fonctionné. des idées? merci

+0

Comment avez-vous votre chemin de classe. Il n'y a pas de défaut donc au minimum vous avez besoin de quelque chose comme '-cp .' –

+0

@Peter: Si aucun chemin de classe n'est défini, il est par défaut le répertoire en cours, est mon expérience. –

Répondre

0

Si vous utilisez des paquets (comme vous êtes, à partir du message d'erreur), vous devez organiser vos fichiers source dans la structure du paquet, puis appelez javac à partir de la racine de cette structure. Par exemple, cette façon:

  • répertoire racine
    • oop
      • ex1
        • filters
          • Writeable.java
          • IllegalFilterArgumentException.java

Ensuite, vous appelez cette façon:

javac oop/ex1/filters/Writable.java 

Alternativement à "appeler à partir du répertoire racine" vous pouvez passer cette racine répertoire en option à javac:

javac -sourcepath "root directory" oop/ex1/filters/Writable.java 

(Vous pouvez également donner d'autres options pour javac, consultez sa page d'aide.)

Questions connexes