Ich habe kein% CLASSPATH% eingerichtet. Wie ich es verstehe, sollte dies kein Problem sein, da Javac einen Klassenpfad des aktuellen Verzeichnisses annimmt.
Wie Sie unten sehen können, kann javac meine Case
-Klasse nicht finden, obwohl sie sich im selben Verzeichnis befindet. Irgendwelche Gedanken darüber, warum das passiert? Dieser Code funktioniert einwandfrei, wenn ich Eclipse verwende.
Update 1:
Nachdem ich versucht habe, aus meinem Paket root (src) zu kompilieren, bekomme ich einen neuen Fehler (selbst nach dem Löschen der Case.class-Datei)
%Vor%Update 2: Es scheint, die Case.java-Datei von einem anderen Paket zu greifen.
%Vor%Sie müssen aus dem Paketstamm und nicht aus dem Paket kompilieren.
Also, cd
zum src
Ordner und kompilieren von dort.
Aktualisieren : Wie bei Ihrem neuen Problem müssen Sie Case.java
auf die gleiche Weise neu kompilieren. Es wurde anscheinend der gleiche falsche Weg (aus dem Paket) zusammengestellt.
Wenn das Problem durch das Kompilieren aus dem Paketstammverzeichnis noch nicht gelöst ist (siehe die anderen Antworten):
Wenn die Datei codejam2011\Round0\D\Case.java
ist, sollte sie also package codejam2011.Round0.D;
als erste Deklaration und dann public class Case { ... }
enthalten. Stellen Sie außerdem sicher, dass keine andere Quelldatei dieses Paket und diese Klassendeklaration enthält.
Aus Ihrer Fehlermeldung sieht es so aus, als wäre die Paketanweisung package codejam2011.Round0.C;
(und Sie haben auch eine Klasse Case
im realen Paket codejam2011.Round0.C
).
Sie befinden sich im falschen Verzeichnis zum Kompilieren.
%Vor%Das sagt mir, dass Ihr Paket codejam2011.Round0.D ist (was gegen die Konvention ist (alles Kleinbuchstaben), aber neben dem Punkt ...
cd zum übergeordneten Verzeichnis von codejam2011, das ist src, nicht wahr?
%Vor%könnte den Trick machen.
Oft haben Sie ein Verzeichnis für kompilierte Klassen wie 'bin' oder 'classes'. Um die Klassen dort zu erstellen, verwenden Sie -d (Ziel):
%Vor%Ich habe ein ähnliches Problem, es kann nicht für alle Fälle gelten, aber was ich getan habe, ist remove.gradle, build und out-Ordner und das Programm neu erstellen.
Tags und Links java packages compiler-errors javac