hallo zusammen,
ich habe einen java projekt, in dem ich pakete benutze. das projekt lief die ganze zeit. aber nach einer woche findet der compiler die pakete nicht mehr. auch mit einem kleinen test_projekt geht das nicht mehr.
test_projekt:
import pakete.\*;
// pakete ist ein verzeichnis, der mit class Package\_Test in der selben verzeichnis sich befindet
public class Package\_Test
{
public static void main(String args[])
{
int rgb[] = new int[3];
getRGB getrgb; // pakete.getRGB
rgb = getrgb.getCol(34555);
als Fehlermeldungen:
-package pakete does not exist
-can not resolve symbole:class getRGB
ich kann die Fehler nicht nachvollziehen. das Pakete-Verzeichnis ist vorhanden und enthält auch die klasse getRGB.
hat jemand einen Hinweis woran es liegen kann.
danke im voraus
Der ‚package test.beispiel‘ Befehl (klein und unscheinbar am Anfang einer java-Datei) ist wichtig und in allen Dateien zu benutzen die Bestandteil eines Packages sind. Sonst sucht der Compiler die weiters benötigten Dateien in einem gegebenen Verzeichnis gar nicht erst. Bzw. er ignoriert die Dateien, die nicht zum jeweiligen Package gehören.
Beispiel:
Code gutbeispiel1.java ‚package java.versuch‘
gutbeispiel2.java ‚package java.versuch‘
wird akzeptiert.
schlechtbeispiel1.java ‚package java2.versuch4.teil2‘
schlechtbeispiel2.java ‚package java2.versuch4.teil7‘
geht daneben…(-> Compiler Fehlermeldung)
Ausserdem muss der Compiler wissen, WO er seine import-Packages suchen soll: ‚javac -classpath c:\ordner\servlet.jar hallowelt.java‘
Hallo Markus,
danke für die schnelle Antwort.
sorry aber ich kann mein problem immer noch nicht nachvollziehen. warum ging vorher das programm einwandfrei ? ich habe doch nichts geändert und compilire mit „javac -deprecation Client.java“
die pakete befindet sich in der selben verzeichnis wo die klasse Client sich befindet.dh. der compiler soll die pakete finden oder nicht wenn ich von dort compiliere. ich habe das nochmal mit eclipse getestet und das geht aber im console nicht.
package pakete;
public class getRGB
{
public int [] getCol(long rgb)
{
int r,g,b;
r = GetRValue(rgb);
g = GetGValue(rgb);
b = GetBValue(rgb);
return new int [] {r,g,b};
}
private int GetRValue(long rgb) {return (int)(rgb& 0xFF);}
private int GetGValue(long rgb) {return (int)((rgb \>\> 8)& 0xFF);}
private int GetBValue(long rgb) {return (int)((rgb \>\>16)& 0xFF);}
}