Asgar13 Geschrieben 20. Januar 2011 Teilen Geschrieben 20. Januar 2011 Hallo, ich habe ein Problem. java.lang.ClassNotFoundException: java.util.concurrent.Semaphore not found in java.lang.ClassLoader$1{urls=[file:/mnt/xxx.jar,file:/mnt/], parent=null} Ich wollte meine Jar auf einen Router starten über die sablevm (java 1.4). Beim Ausführen kommt die obrige Fehlermeldung. Daraufhin habe ich den Ordner concurrent, mit den ganzen Klassen in die Bootclasspath eingefügt java/util/concurrent. Nochmal ausgeführt und keine Besserung, wie soll man die Klasse in den ClassLoader einfügen? Vielen Dank schon mal für die Hilfe. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kingofbrain Geschrieben 20. Januar 2011 Teilen Geschrieben 20. Januar 2011 Servus, also Du kannst nicht einfach ein paar Klassen aus dem 1.5er JDK (oder größer) nehmen, und einer 1.4er VM unterjubeln. Entweder Du kannst die VM auf eine höhere Version bringen, oder Du wirst die Anwendung auf die Version 1.4 portieren müssen. Schöne Grüße, Peter Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Asgar13 Geschrieben 20. Januar 2011 Autor Teilen Geschrieben 20. Januar 2011 Die Jar hatte ich auf 1.4 mit dem retroweaver runterpoliert. Hat auf dem großen Pc mit 1.4 geklappt, bloß auf dem Router nicht.(Hätte ich lieber schon mal oben schreiben sollen) Kann das jre 1.4.2 auf die Semaphore von 1.5 zugreifen, wenn ja, dann würde ich den Fehler verstehen. PC hat Java 1.4 & 1.5 & 1.6 (habe aber mit Sicherheit das 1.4 benutzt) Router Java 1.4. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Thanks-and-Goodbye Geschrieben 20. Januar 2011 Teilen Geschrieben 20. Januar 2011 Lästerliche Zwischenfrage: Java läuft inzwischen auf dem Router? http://forum.fachinformatiker.de/networking-technologies/142507-java-asus-rt-n16-router.html Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kingofbrain Geschrieben 21. Januar 2011 Teilen Geschrieben 21. Januar 2011 Also die von Dir in der Fehlermeldung genannte Klasse Semaphore ist erst seit JDK 1.5 enthalten. Deshalb kann es eigentlich auf einer 1.4er VM nicht laufen. Was der Retroweaver macht, kann ich nicht sagen, da ich das Werkzeug nicht kenne. Es kann natürlich auch an der speziellen (nicht Sun, hoppla, Oracle natürlich) VM auf dem Router liegen. Schöne Grüße, Peter Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Asgar13 Geschrieben 21. Januar 2011 Autor Teilen Geschrieben 21. Januar 2011 @Chief Wiggum: ja, ich habe es, letzter Thread erklärt den Fehler, die Frage dadrunter habe ich nur gestellt, weil ich nicht wusste, wie man eine Jar einbinden soll. Ich habe aber herausgefunden, dass zu sablevm auch java-sablevm mitgeliefert wird, auf der es möglich ist. @kingofbrain danke für die Hilfe, wenn es an retroweaver liegt, muss ich noch mal Gedanken darüber machen. Trotzdem nochmal danke Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Schiller256 Geschrieben 21. Januar 2011 Teilen Geschrieben 21. Januar 2011 Bist du dir sicher das du das JRE 1.4 auf deinem PC verwendet hast? Denn wenn ich Retroweaver richtig verstanden habe dann entfernt er die 1.5 Java Sprachfeatures aber erkennt nicht welche Klassen oder Methoden mit Java 1.5 neu hinzugekommen sind. Wenn du die Sourcen hast wäre es das einfachste wenn du sie nach 1.4 compilierst. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Asgar13 Geschrieben 26. Januar 2011 Autor Teilen Geschrieben 26. Januar 2011 @Schiller 256 Ja ich bin mir sicher, weil ich einen absoluten Pfad nehme zum JRE1.4. In der Zwischenzeit habe ich retroweaver rausgeschmissen und den retrotranslator genommen und damit hat er mir jetzt die erste Fehlermeldung vom Programm ausgegeben. Danke nochmal für die Hilfe. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.