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?

Était-ce utile?

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.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top