wake-up-neo.net

Java-Paket existiert nicht Fehler

Es gibt also einen Ordner /usr/share/stuff im Stammverzeichnis

in Sachen gibt es eine Reihe von Java-Dateien mit package org.name-Definitionen an der Spitze

Ich führe javac test.Java aus, wo test.Java in einer Subdomain ist

Ich habe /usr/share/stuff zu meinem Klassenpfad hinzugefügt.

und am oberen Rand von test.Java füge ich import org.name hinzu

Aber ich bekomme einen package does not exist Fehler ... warum?

28

Sind sie in den richtigen Unterverzeichnissen?

Wenn Sie /usr/share/stuff in den Klassenpfad setzen, sollten die mit package org.name definierten Dateien in /usr/share/stuff/org/name sein.

EDIT: Wenn Sie dies noch nicht wissen, sollten Sie wahrscheinlich Folgendes lesen: http://download.Oracle.com/javase/1.5.0/docs/tooldocs/windows/classpath.html #Verstehen

EDIT 2: Sorry, ich hatte nicht bemerkt, dass Sie in /usr/share/stuff von Java-Quelldateien sprechen. Sie müssen sich nicht nur im entsprechenden Unterverzeichnis befinden, sondern müssen auch kompiliert werden. Die .Java-Dateien müssen sich nicht im Klassenpfad befinden, sondern im Quellpfad. (Die generierten .class-Dateien müssen sich im Klassenpfad befinden.)

Sie könnten mit dem Kompilieren davonkommen, wenn sie sich nicht unter der richtigen Verzeichnisstruktur befinden. Dies sollte jedoch der Fall sein, oder es werden mindestens Warnungen generiert. Die generierten Klassendateien befinden sich in den rechten Unterverzeichnissen (wo immer Sie -d angegeben haben).

Sie sollten etwas wie javac -sourcepath .:/usr/share/stuff test.Java verwenden, vorausgesetzt, Sie haben die .Java-Dateien, die sich unter /usr/share/stuff befanden, unter /usr/share/stuff/org/name (oder was auch immer nach ihren Paketnamen passend ist) gespeichert.

23
Bruno

Sie müssen org/name-Verzeichnisse unter /usr/share/stuff haben und Ihre org.name-Paketquellen in diesem Verzeichnis ablegen.

2
pajton

Beim manuellen Kompilieren über die Befehlszeile hatte ich genau das gleiche Problem. Meine Lösung bestand darin, das Verzeichnis -sourcepath nicht einzuschließen, damit alle Java-Dateien des Unterverzeichnisses ebenfalls kompiliert würden!

2
Xenland

Ich hatte dieses Problem. Beim Versuch, ein als .jar in meiner App verpacktes Design zu verwenden, funktionierte es beim Debuggen der App, beim Erstellen/Exportieren der App jedoch nicht.

Ich habe das Problem gelöst, indem ich die jar entpackt und den Inhalt manuell zu meinem Build-Ordner hinzugefügt habe.

project/
   │
   ├── build 
   │   └── classes
   │       ├── pt
   │       │   └── myAppName ... 
   │       └── com
   │           └── themeName ...
   ├── src
   └── lib

Ich habe den Fehler nicht mehr und meine App wird mit dem beabsichtigten Thema geladen.

2
Toni Almeida

Klicken Sie mit der rechten Maustaste auf Ihr Maven-Projekt im unteren Bereich der Dropdown-Liste Maven >> reimport

es funktioniert für mich für die fehlenden abhängigkeiten

0
Mewan