linux pour compiler plusieurs fichiers java
Question
voici ma structure de répertoire.
/ user / a / utilisateur / b / user / b
Dans le dossier a, b, c, il y a un fichier person.java (c'est le même fichier, juste une modification d'une ligne.
maintenant, sur mon shell, sur mon répertoire / utilisateur / et j'essaie de le faire
javac */person.java
le shell renvoie l'erreur suivante,
person.java:14: classe en double: personne
Y at-il quelque chose pour résoudre ce problème?
La solution
Je pense que le problème ici est peut-être que javac essaie de tout compiler en une fois, ce qui entraîne naturellement la duplication des définitions de classe.
Un moyen simple de résoudre ce problème serait
trouver. -name '* .java' -exec javac {} \;
Modifier:
Ou pour être plus précis find. -name 'person.java' -maxdepth 2 -exec javac {} \;
Autres conseils
Je choisirais le petit script shell:
for f in */person.java; do
javac $file
done
La première ligne recherche tous les fichiers person.java dans un sous-répertoire, la deuxième ligne compile le fichier.