the type java.lang.object cannot be resolved

D

drylemon

Registriert
Thread Starter
Dabei seit
15.12.2004
Beiträge
3
Reaktionspunkte
0
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
 
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?
 
drylemon schrieb:
... normalerweise müßte java ja wissen, wo es seine .jar files mit den classen findet oder ?

"normalerweise" nutzt java die Umgebungsvariable CLASSPATH um die .class und .jar Files zu finden.


Gruß,

?=?
 
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
 
. . . 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ß,

?=?
 
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...
 
drylemon schrieb:
Ich hab mir nun eine "Entwicklungsumgebung" für Java runtergeladen (KarelJIDE), . . .
. . . 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:
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
 
Zurück
Oben Unten