class file contains wrong class

ingham

Grünschnabel
Hallo da!
Folgendes Problem:
Ich möchte eine Klasse importieren. Wir sind im Verzeichnis ./ und die benötigten Klassen (z.B. "Punkt") sind in ./GeoClass/ (also z.B. "./GeoClass/Punkt.class")
Der Code:

Code:
import GeoClass.*;
import java.awt.*;
public class Klasse
{
  int anzahl;
  Color farbe = new Color();
  Punkt haus = new Punkt();
  int punktAnzahl;
}

Jetzt kommt aber immer beim Kompilieren die Ausgabe:

Klasse.java:7: cannot access GeoClass.Punkt
bad class file: ./GeoClass/Punkt.class
class file contains wrong class: Punkt
Please remove or make sure it appears in the correct subdirectory of the classpath.
Punkt haus = new Punkt();
^

... und ich versteh's nicht.
In einem anderen Programm funktioniert schließlich auch die Referenz auf ein Unterverzeichnis und alle Klassen werden dort importiert und funktionieren. Könnt ihr mir weiterhelfen?
 
Hallo!

Hast Du in der Klasse Punkt den Packagenamen angegeben?

Java:
package GeoClass;
class Punkt {
}

Nach den üblichen Konventionen sollten die Packages (und somit unterordner) übrigens mit Kleinbuchstaben anfangen.
 
Eben das ist das Problem: Die Klassen sind in keiner Package, sondern einzeln im Verzeichnis als .class-Dateien. Sie sind auch nicht von mir und NUR als .class, ohne .java-Source. Es muss doch möglich sein (ich kann darauf vertrauen, dass in den Dateien das drinsteht, was draufsteht), auch so diese Klassen zu verwenden. Oder?
 
Zurück