Klassen Anfänger braucht Hilfe! Probleme mit Javakara.jar

  • Themenstarter Themenstarter Leander
  • Beginndatum Beginndatum
L

Leander

Gast
Hallo 🙂
Ich habe folgendes Problem:
Ich habe Java JDK, JRE, Eclipse installiert, da wir demnächst in Informatik damit arbeiten. Die Umgebungsvariable bei Path habe ich auch umgestellt.
Aufgabe ist nun, mit Javakara etwas zu programmieren. Problem: Die Datei lässt sich nur über die Shell öffnen. Kann mir jemand sagen, warum? (Win7, 64bit).
Das Programm mit javac zu öffnen bzw javaw funktioniert nicht, dann erscheint die Meldung:
"could not find the main class".
Es wäre toll, wenn mir schnell jemand helfen könnte. Mein Lehrer weiß auch nicht weiter.. Über die Shell starten ist ziemlich lästig, zumal irgendwie die gespeicherten Sachen weg sind -.-
Vielen, vielen Dank schonmal.
 
Nicht öffnen heißt, nicht per Doppelclick öffnen? Wie schaut auf Eurem System die Dateiverknüpfung zur Endung jar aus?
Welche Verion habt Ihr runtergeladen?

Wie startet Ihr über die Shell?

Letztendlich ist es aber egal wie die Applikation gestartet wird.


Wie soll man damit ernsthaft programmieren lernen ;-)
 
Das sind ja erst die Anfänge, damit wir ein Gefühl fürs Programmieren bekommen.
Javakara ist so ein komischer Marienkäfer den man dann mit Befehlen steuern kann.
Sobald ich über die Shell eingebe Desktop/ java -jar javakara.jar öffnet sich das Programm.
Wobei, wenn ich die Datei mit einem Doppelklick anklicke gar nichts passiert (es kommt kurz ein schwarzes Fenster, ist aber in dem Moment auch wieder weg). Ändere ich bei öffnen mit auf "javac" kommt die Meldung "could not find the main class. programm will exit".
Ich weiß nicht was ich falsch gemacht habe, ich denke irgendwas stimmt mit den Klassen nicht, bzw mit dem öffnen von jar dateien. Meine Mitschüler haben keine Probleme. Was ich falsch gemacht habe ist mir ein Rätsel.
Jdk und jre sind 6.27 und wie die Dateiverknüpfung zu jar aussieht, weiß ich nicht. Kenn mich nicht so gut aus.
Danke aber schonmal für eure Antworten
 
javac ist nicht zum öffnen von Dateien da!

Ansonsten mach mal Rechtsklick auf die Datei und "Öffnen mit..." und such dir da mal das javaw.exe raus (und dann irgendwo/irgendwie ein Häkchen bei "Immer damit öffnen" oder so)
 
ein Doppelclick mach im Hintergrund auch nichts anderes als
Code:
java -jar javakara.jar
aber eventuel verweist die Dateiverknüpfung auf eine ältere Java RE, die das neueste auf 1.6 kompilierte Paket nicht starten kann.

Unter Win7 kann ich grad nicht sagen wo man die Dateiverknüpfungen anschauen und anpassen kann unter XP wäre es im Explorer unter Extras--> Ordneroptionen - Dateitypen
 
Öffne ich die Datei mit javaw erscheint:
Java Virtual Machine Launcher
Could not find the main class: C:\Users\..\Desktop\javakara.jar. Programm will exit
Komische Sache :S
 
Wir arbeiten mit unseren Laptops in der Schule. Mein Nachbar hat auch Win7, die gleichen Dateien installiert und bei ihm läuft es.. Javakara funktiniert also tendenziell auf JDK und JRE 6.27
 
Öffne ich die Datei mit javaw erscheint:
Java Virtual Machine Launcher
Could not find the main class: C:\Users\..\Desktop\javakara.jar. Programm will exit
Komische Sache :S

Aber mit
Code:
java -jar javakara.jar
auf der Konsole hast du das Programm doch schon zum Laufen gekriegt? Wie und wo genau hast du denn
Code:
javaw
ausgeführt? Schau doch nochmal nach, welche Javaversion du denn hast
Code:
java -version
, ob es mehrere Javaversionen auf deinem Rechner gibt und ob der Pfad auch wirklich richtig gesetzt ist.
 
Wenn ich das Programm über die Shell starte (java oder javaw) funktioniert alles wunderbar.
Aber ich kann das Programm nicht mit dem Doppelklick starten, dann kommt (wenn ich es über javaw starte) die oben genannte Fehlermeldung. Es gibt nur eine Java Version (6.27).
 
Das klingt unlogisch....Aber im Worst-Case schreib dir einfach eine Batchdatei um das Programm zu starten und Doppelklick einfach darauf...

Eine Batchdatei erstellst du einfach mit einem Texteditor (Endung muss frei wählbar sein!) schreibst dort halt die Zeile zum Starten aus der shell ("java -jar ...") und speicherst es als "xxx.bat" ab und dann Doppelklick mal darauf...Vllt hilft das ja weiter. (Ist zwar nicht die beste Lösung, aber naja ^^)
 
Das mit der batch Datei, habe ich bis jetzt auch so gemacht.
Habe aber gedacht, es gibt eine andere Möglichkeit. Ich verstehs einfach nicht. Vielleicht fällt ja noch jemandem was ein, was ich da falsch gemacht haben könnte.. Unlogisch -.-
Heißt das keine Jar datei funktioniert bei mir?
Ich kenne mich nicht gut aus, aber kann es sein, dass JavaKara iwie bei Program Files x86 sucht?! Weil alle anderen haben hier 32bit Systeme.
 
Das mit der batch Datei, habe ich bis jetzt auch so gemacht.
Habe aber gedacht, es gibt eine andere Möglichkeit. Ich verstehs einfach nicht. Vielleicht fällt ja noch jemandem was ein, was ich da falsch gemacht haben könnte.. Unlogisch -.-
Heißt das keine Jar datei funktioniert bei mir?
Ich kenne mich nicht gut aus, aber kann es sein, dass JavaKara iwie bei Program Files x86 sucht?! Weil alle anderen haben hier 32bit Systeme.

Nun um rauszufinden ob anderen jar Dateien funktionieren müsstest du ja nur eine andere starten ^^

Ansonsten, war da nicht irgendwas das Java nicht richtig funktioniert auf 64-Bit Systemen?
Gibt es eine Java 64-Bit Version und wenn ja hast du die installiert? Wenn ja dann lösch diese und versuch es mit der 32-Bit Version.

Was anderes fällt mir auch nicht mehr ein. Ich benutze keine 64Bit Systeme, weil ich genau einmal Probleme damit hatte das was nicht ging (allerdings unter Linux) und ich auf sowas kein Bock hab 🙂
 
Ich weiß nicht, wo ich die Dateiverknüpfung finde. Unter "öffnen mit" habe ich eben die datei "javaw" angegeben.
Ich habe keine andere jar Datei, ggf muss ich das halt immer über Shell starten bzw eine batch-Datei schreiben. Ist halt ein wenig umständlich und nervig.
Ob das ganze an der 32 bit version liegt, weiß ich nicht. Aber bevor ich jetzt alles neu installiere, da die Programme mit Java alle 64 bit sind, lasse ichs lieber. Hat lange genug gedauert, bis das so wies jetzt "läuft" geklappt hat.
Vielen Dank für eure Hilfe,
vielleicht kommt ja irgendwann nochmal wer, der das gleiche Problem gelöst hat, sonst habe ich halt Pech 🙂
 
Ich habe eben einen Beitrag gefunden, der zur Lösung des Problems führen soll.
Jedoch verstehe ich nur Bahnhof. Kann das vielleicht jemand nochmal vereinfachen:

Ich habe die JRE auch manuell installiert und damit klappt das Ausführen per Doppelklick.

Der Befehl, der bei Doppelklick ausgeführt wird, lässt sich bei Vista aber auch manuell in der Registry ändern:

1. regedit.exe als Admin starten.
2. unter HKEY_CLASSES_ROOT sicherstellen, dass es einen Schlüssel mit dem Namen .jar gibt.
3. Den Default-Wert auf jarfile setzen (bzw. im Folgenden jarfile durch den dort gefundenen nicht-leeren Wert ersetzen)
4. Unter HKEY_CLASSES_ROOT sicherstellen, dass es den Schlüssel jarfile\shell\open\command gibt.
5. Der Default-Wert unter jarfile gibt die Datei-Typ-Beschreibung an, also z.B. "Executable Jar File"
6. Der Default-Wert unter jarfile\shell\open\command gibt den auszuführenden Befehl an, bei mir z.B.
Code:
"C:\Program Files\Java\jre1.6.0_05\bin\javaw.exe" -jar "%1" %*
(Pfad entsprechend anpassen)

Dann sollten sich spätestens nach einem Neustart des Rechners JAR-Dateien per Doppelklick starten lassen.


Vielen Dank 🙂
 
Bevor du in der REgistry rumspielst: Hast du vllt diese Datei in einem Ordner mit Leerzeichen liegen? Das kann auch zu doofem Verhalten führen, wobei da dann meist mit ner (einfachen) Batchdatei der gleiche Fehler auftreten würde^^ Aber n Versuch isses wert, das in nem Ordner ohne Leerzeichen zu machen.
 
Der Befehl, der bei Doppelklick ausgeführt wird, lässt sich bei Vista aber auch manuell in der Registry ändern:
Das ist der riskantere Weg ;-)

Aber Du könntest mal zunächst einfach in der Registry nachschauen, ob unter HKEY_CLASSES_ROOT der Schlüssel (wird als Verzeichnis dargestellt)
Code:
jarfile
vorhanden ist und was das unter
Code:
shell
->
Code:
open
->
Code:
command
als Standard gesetzt ist und das hier posten.
 
Also, die Datei liegt auf dem Desktop, ein Leerzeichen habe ich nirgendswo eingegeben.
In dem Registrierungs-Editor gibt es nur die datei .jar
.jarfile existiert nicht.
was soll ich in der shell machen? ich verstehs nicht so ganz
 
Als Wert kommt dann bei mir:
"C:\Program Files\Java\jre6\bin\javaw.exe" -jar "%1" %*

Was muss ich damit jetzt machen?
 
Unter dem Schlüssel
Code:
.jar
muss der Wert
Code:
jarfile
liegen.

Existiert Pfad und exe so auf Deinem System?
Code:
C:\Program Files\Java\jre6\bin\javaw.exe
Wobei es sich dann vermutlich in dem Fall um eine 64bit JRE handelt und wenn's es damit tatsächlich Probleme gibt...
Man könnte versuchen hier die 32bit JRE einzutragen, falls auf dem System existent

Das
Code:
%*
im Wert kenne ich so nicht und sollte eigentlich überflüssig sein, sollte allerdings auch nicht stören.
 
Unter .jar ist als Wert "jar_auto_file" angegeben
Und bei jar_auto_file ist als Wert "C:\Program Files\eclipse\eclipse.exe" "%1" angegeben.
Hier könnte das Problem sein, oder? Wie ändere ich das? Bzw. was muss ich ändern?
Also der Pfad C:\Program Files\Java\jre6\bin\javaw.exe stimmt soweit.
Wobei es die Datei javaw auch unter jdk gibt..
Danke Michael.. für deine Hilfe 🙂
 
Dann ändere unter dem Schlüssel
Code:
.jar
mal
Code:
jar_auto_file
in
Code:
jarfile
 
Danke du bist genial 🙂 Wuhu, es funktioniert.
Vielen, vielen Dank für deine Hilfe. Hätte ich sonst nie hinbekommen! *Orden verleih*
Danke, danke danke.
Einen schönen Tag wünsche ich noch allen 🙂
Das Thema hat sich hiermit erledigt.
 

Neue Themen


Zurück
Oben