the type java.lang.object cannot be resolved

Dieses Thema im Forum "Mac OS X Entwickler, Programmierer" wurde erstellt von drylemon, 15.12.2004.

  1. drylemon

    drylemon Thread Starter MacUser Mitglied

    Beiträge:
    3
    Zustimmungen:
    0
    MacUser seit:
    15.12.2004
    Hi ihr,
    ich hab momentan ein kleines Problem. Zum einen bin ich jetzt seit ein paar Tagen stolzer Besitzer meines ersten Macs, ich kenne mich also damit überhaupt nicht aus und wie es scheint ist hier (gottseidank) einiges anders als unter winxp.
    Nun mein Problem, in OSX.3 ist doch ein jdk dabei, mit dem ich eigentlich ohne Probleme programmieren können sollte. Ich hab mir nun eine "Entwicklungsumgebung" für Java runtergeladen (KarelJIDE), welche wir in unserer GDI-Vorlesung verwenden.
    Wenn ich nun ein Programm schreibe und dies versuche zu kompilieren, dann bekomme ich immer wieder die Fehlermeldung:

    ------
    1.ERROR in /Users/Shared/KarelJIDE/./KarelJIDEtemp/KarelJMain.java (at line 1)
    task
    ^
    The type java.lang.Object cannot be resolved. It is indirectly referenced from required .class files
    ------

    Allerdings kann ich damit nichts anfangen, denn normalerweise müßte java ja wissen, wo es seine .jar files mit den classen findet oder ?

    Ich schicke auch mal den Source mit, den das Ding versucht zu kompilieren:

    ------
    public class KarelJMain implements KarelJConstants { public static void main(String args[]) throws Throwable {task();}public static void task() throws Throwable
    {
    UrRobot karel=new UrRobot(1,1,1,North);
    karel.move();
    }}
    ------


    Wäre echt toll, wenn mir jemand helfen könnte.

    Danke schonmal im vorraus :D
     
  2. unregistriert

    unregistriert MacUser Mitglied

    Beiträge:
    5
    Zustimmungen:
    0
    MacUser seit:
    27.08.2004
    dumme Frage

    kann es sein, dass du die IDE oder das was alles dazugehört kompilieren musst?

    Sieht auch irgendwie wild formatiert aus.
    so ist's besser:

    public class KarelJMain implements KarelJConstants {
    public static void main(String args[]) throws Throwable {
    task();
    }
    public static void task() throws Throwable {
    UrRobot karel=new UrRobot(1,1,1,North);
    karel.move();
    }
    }

    haste das ganze mal auf der Shell compiliert?
     
  3. ?=?

    ?=? MacUser Mitglied

    Beiträge:
    941
    Zustimmungen:
    14
    MacUser seit:
    09.02.2004
    "normalerweise" nutzt java die Umgebungsvariable CLASSPATH um die .class und .jar Files zu finden.


    Gruß,

    ?=?
     
  4. drylemon

    drylemon Thread Starter MacUser Mitglied

    Beiträge:
    3
    Zustimmungen:
    0
    MacUser seit:
    15.12.2004
    Cool, danke für eure Hilfe

    Hi,
    ich hab heute endlich mal mit dem sprechen können, der das ganze Unheil verzapft hatte, anscheinend benutzt diese KarelJ Entwicklungsumgebung nicht wie alle anderen ganz normal den Java Compiler, sondern einen integrierten compiler, der anscheinend nicht mit den Java-Klassen zurecht kommt.
    Der Typ hat mir dann auch ein Workaround gegeben, ich muß den Source nun erst in dem Programm compilieren, das erzeugt mir dann meine temp.java datei, die ich dann vom Terminal aus compilieren muß und diese dann wieder in KarelJ ausführen kann.

    :) somit ists anscheinend relativ schlecht eine Lösung für das Problem zu finden :D
     
  5. ?=?

    ?=? MacUser Mitglied

    Beiträge:
    941
    Zustimmungen:
    14
    MacUser seit:
    09.02.2004
    . . . steig lieber gleich auf XCode oder Eclipse um.
    Zumindest Eclipse ist nach meinen Erfahrungen auch auf dem Mac problemlos und die Projekte können plattformübergreifend genutzt werden.
    XCode kenn ich noch nicht näher.


    Gruß,

    ?=?
     
  6. oneOeight

    oneOeight MacUser Mitglied

    Beiträge:
    46.808
    Zustimmungen:
    3.633
    MacUser seit:
    23.11.2004
    das wird wohl nicht einfacher sein als karelj neu zu compilieren ;)
    wenn du mal eine suchmaschine bemühst, dann siehst du das karelj eine eine java spracherweiterung für roboter steuerung ist.
    und je nach dem, was die da gefrickelt haben, ob es nun einfach nur klassen für java sind oder ein kompletter compiler, wird das ganze eventuell nicht so leicht unter xcode oder eclipse...
     
  7. ?=?

    ?=? MacUser Mitglied

    Beiträge:
    941
    Zustimmungen:
    14
    MacUser seit:
    09.02.2004
    . . . hmmm, bei meinem vorherigen Posting bin ich davon ausgegangen, dass es um eine "Plain-Old-Java" Entwicklungsumgebung geht und das es daher grundsätzlich auch jede andere IDE tut . . .
    Das scheint ja nicht so zu sein :(


    ?=?
     
    Zuletzt bearbeitet: 17.12.2004
  8. drylemon

    drylemon Thread Starter MacUser Mitglied

    Beiträge:
    3
    Zustimmungen:
    0
    MacUser seit:
    15.12.2004
    Ja, dieses KarelJ ist für uns zum lernen von Java gemacht worden und naja, es ist sozusagen ein ganz normaler Javacompiler mit integriertem Interpreter mit dem man kleine Roboter steuern kann :)
    Aber ich muß sagen, dass ich xcode schon sehr schick finde. Ich bin zwar eher der Typ der c++ bevorzugt, aber langsam entdecke ich auch die tollen seiten an Java.

    Ich wollte mich nochmal bei allen bedanken, die mir auf meine Frage geantwortet haben und allen einen guten Rutsch und ein frohes neues Jahr wünschen.

    Da anscheinend mehrere Leute genau das gleiche Problem mit diesem KarelJ haben poste ich hier nochmal die lösung die mir weitergeholfen hat:

    1) Ich konnte keine [ ] { } oder ähnliches in der Umgebung schreiben, da anscheinend die deutsche Tastatur nicht richtig implementiert ist, man kann allerdings in der "systemsteuerung" die amerikanische Tastatur freischalten und dann mit apple + alt + space immer zwischen deutscher und amerikanischer wechseln

    2) das kompilieren hat immer diesen komischen Fehler ausgegeben.
    Dazu wurde mir dann folgender Workaround gegeben:

    • Benutzen Sie die IDE und wenn Sie ein Programm ausführen wollen, drücken Sie auf "execute"
    • Dann wird Ihr Programm in reines Java übersetzt und anschließend von der IDE kompiliert. Beim kompilieren tritt der Fehler auf, aber das Übersetzen funktioniert.
    • Nach dem gescheiterten Kompilieren, wechseln Sie in das Verzeichnis KarelJTemp und geben dort ein: "javac -classpath robots.jar KarelJMain.java"
    • Anschließend gehen sie Wieder in das IDE Fenster und drücken erneut auf "execute" und dieses Mal wird dann das Programm ausgeführt und sollte laufen
     
Die Seite wird geladen...

Diese Seite empfehlen