Webmaster Forum Logo Part 1 Webmaster Forum Logo Part 2
Webmaster Forum Logo Part 3
     
 
  :: Anmeldung

Benutzername:

Registrierung...

Passwort:

Passwort vergessen?

angemeldet bleiben


  
  :: Umfrage
Welche sozialen Netzwerke benutzt du regelmäßig?

 Facebook
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 73%
 keines
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 22%
 Google+
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 19%
 Twitter
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 11%
 Xing
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 6%
 schülerVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 6%
 meinVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 4%
 studiVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 4%
 MySpace
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%
 LinkedIn
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%

 ges. 393 Stimmen
 
  :: Buttons

Valid XHTML 1.0 Transitional

delta

Tripel-As

Dabei seit: 15.06.2009

Beiträge: 228

 

1 Zum Seitenanfang

Samstag, 26. Februar 2011, 17:50

Java: Fehler bei .jar-Datei

Hi Leute,

ich habe eine kleine Desktop-Anwendung mit Netbeans geschrieben. Wenn ich es in Netbeans ausführe, funktioniert es ohne Probleme. Erzeuge ich jedoch eine .jar-Datei und öffne diese, bekomme ich immer folgende Meldung:



Warum findet er den ClassLoader nicht?

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »delta« (26. Februar 2011, 17:50)

 

nocturne

Kaiser

Dabei seit: 06.01.2005

Beiträge: 1 167

 

2 Zum Seitenanfang

Samstag, 26. Februar 2011, 19:52

Du hast den falschen Befehl eingegeben.

"Warum findet er den ClassLoader nicht?", er sucht alle Arten von Class-Loadern und findet keinen passenden (so musst du das verstehen).
 

delta

Tripel-As

Dabei seit: 15.06.2009

Beiträge: 228

 

3 Zum Seitenanfang

Samstag, 26. Februar 2011, 23:00

"java DesktopApplication1"

wie heißt es denn dann richtig?
 

jperl

Super Moderator

Dabei seit: 09.04.2003

Beiträge: 3 453

 

4 Zum Seitenanfang

Samstag, 26. Februar 2011, 23:43

wie hast du denn die .jar datei erstellt?
eventuell ist die Manifest.MF fehlerhaft.

jperl
Konfuzius [chinesischer Philosoph (551 - 479 v. Chr.)]
Das Entscheidende am Wissen ist, daß man es beherzigt und anwendet.
 

nocturne

Kaiser

Dabei seit: 06.01.2005

Beiträge: 1 167

 

5 Zum Seitenanfang

Sonntag, 27. Februar 2011, 10:24

Richtig wäre gewesen:
java -jar DesktopApplication1.jar
 

delta

Tripel-As

Dabei seit: 15.06.2009

Beiträge: 228

 

6 Zum Seitenanfang

Sonntag, 27. Februar 2011, 12:41

wie hast du denn die .jar datei erstellt?
eventuell ist die Manifest.MF fehlerhaft.

Hab es bis jetzt immer mit Netbeans erzeugt. Hab das ganze Projekt jetzt gelöscht und neu erstellt. Da funktioniert es dann ?(

edit: Wenn ich das ganze mit Doppelklick ausführen will, kommt der Fehler "Could not find the main class".

In der manifest.mf steht folgendes drinnen:

Quellcode

1
2
3
4
5
6
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.1
Created-By: 1.6.0_21-b07 (Sun Microsystems Inc.)
Main-Class: desktopapplication1.DesktopApplication1
Class-Path: lib/appframework-1.0.3.jar lib/swing-worker-1.1.jar
X-COMMENT: Main-Class will be added automatically by build


Der Pfad zur Main-Class stimmt auch, oder übersehe ich was?

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »delta« (27. Februar 2011, 12:41)

 

elchrz

Foren As

Dabei seit: 06.10.2010

Beiträge: 99

 

7 Zum Seitenanfang

Sonntag, 27. Februar 2011, 19:45

Wenn du in NetBeans ein Projekt compillierst (Build Project...), wird doch automatische eine .jar erzeugt, oder?
Funktioniert die nicht?
 

delta

Tripel-As

Dabei seit: 15.06.2009

Beiträge: 228

 

8 Zum Seitenanfang

Dienstag, 1. März 2011, 15:24

bei mir wird ein build-Ordner erzeugt, darin ist aber keine .jar-Datei. Auch wo anders finde ich keine.
 

jperl

Super Moderator

Dabei seit: 09.04.2003

Beiträge: 3 453

 

9 Zum Seitenanfang

Dienstag, 1. März 2011, 18:44

welche netbeans version verwendest du?

könnte sein, dass die jar datei in einem ordner steckt der zb. dist heißt.

jperl
Konfuzius [chinesischer Philosoph (551 - 479 v. Chr.)]
Das Entscheidende am Wissen ist, daß man es beherzigt und anwendet.
 

elchrz

Foren As

Dabei seit: 06.10.2010

Beiträge: 99

 

10 Zum Seitenanfang

Dienstag, 1. März 2011, 18:48

Hallo,

die .jar-Datei findet sich normalerweise im Unterordner /dist/ im Projektverzeichnis.
Unter den Projekt-Eigenschaften (Run/Set Project Configuration/Customize...) findet sich im Menupunkt Build/Packaging die Option Build JAR after compiling.
Ist diese bei dir gesetzt?
Falls nicht, solltest du das zunächst versuchen.


Falls sie gesetzt ist und trotzdem kein jar file bzw. kein dist-Ordner erzeugt wird, wenn du Run/Clean and Build Main Project drückst (dein Projekt muss in dem Fall natürlich das main Project sein), dann liegt der Fehler tiefer.

Hilfreich wäre in dem Fall, wenn du die Ausgabe des Output Windows (Window/Output/Output) mal postest. Bzw. uns mal die genauen Schritte mitteilst, die du unternommen hast, um das Project manuell zu kompillieren.
 

delta

Tripel-As

Dabei seit: 15.06.2009

Beiträge: 228

 

11 Zum Seitenanfang

Dienstag, 1. März 2011, 19:43

im Dist-Ordner ist die .jar-Datei, welche ich mit Netbeans 6.9.1 erstellt habe. Diese wird auch neue erstellt, wenn ich sie lösche.

Komischerweise funktioniert keine .jar-Datei mehr auf dem Computer, ist da vll. etwas bei Java falsch eingestellt? Java neuinstallieren, oder weiß jemand, was falsch ist, an Netbeans kanns ja dann nicht liegen.
 

elchrz

Foren As

Dabei seit: 06.10.2010

Beiträge: 99

 

12 Zum Seitenanfang

Dienstag, 1. März 2011, 22:27

Was meinst du denn genau mit "nicht funktionieren"?
Angenommen, dein Projekt befindet sich in der DesktopApplication1.jar
du begibst dich in das entsprechende Verzeichnis, welches die Datei beinhaltet und du gibts

Quellcode

1
java -jar DesktopApplication1.jar

in der Console ein. Was genau funktioniert dann nicht? Wie lautet die Fehlermeldung?
 

delta

Tripel-As

Dabei seit: 15.06.2009

Beiträge: 228

 

13 Zum Seitenanfang

Mittwoch, 2. März 2011, 15:58

Über die Console funktioniert es ja bereits.

Wenn ich das ganze mit Doppelklick ausführen will, kommt der Fehler "Could not find the main class: C:\.....\DesktopApplication1.jar".

In der manifest.mf steht folgendes drinnen:

Quellcode

1
2
3
4
5
6
7
Manifest-Version: 1.0
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.1
Created-By: 1.6.0_21-b07 (Sun Microsystems Inc.)
Main-Class: desktopapplication1.DesktopApplication1
Class-Path: lib/appframework-1.0.3.jar lib/swing-worker-1.1.jar
X-COMMENT: Main-Class will be added automatically by build
 

elchrz

Foren As

Dabei seit: 06.10.2010

Beiträge: 99

 

14 Zum Seitenanfang

Mittwoch, 2. März 2011, 19:43

Zitat

Über die Console funktioniert es ja bereits.

ja, wenn es funktioniert, dann funktioniert es!

Zumindest liegt es dann nicht an Java, denn sonst würde es über die Konsole ja nicht funktionieren.

Vielleicht ein Problem mit dem Classpath..
Welches Betriebsystem verwendest du? Womit sind .jar files verknüpft?
 

delta

Tripel-As

Dabei seit: 15.06.2009

Beiträge: 228

 

15 Zum Seitenanfang

Donnerstag, 3. März 2011, 14:25

Betriebssystem: Win7 Home Premium 64bit.

Öffnen will er es mit Java (TM) Platform SE Binaray, also der java.exe aus dem jse-Ordner.
 

elchrz

Foren As

Dabei seit: 06.10.2010

Beiträge: 99

 

16 Zum Seitenanfang

Donnerstag, 3. März 2011, 21:12

Es wäre unter Windows wahrscheinlich sinnvoller, jar files mit der javaw.exe zu verknüpften. (Damit verhinderst du, dass das jar file bei einem doppelklick über die Konsole ausgeführt wird. Allerdings wird das allein nicht der Grund für den Fehler sein.)

Du solltest mal überprüfen, wie der Registry-Schlüssel für jarfiles aussieht. Der sollte sich bei
HKEY_CLASSES_ROOT\jarfile\shell\open\command
befinden und als Wert
"<Pfad zum Javaordner>\bin\javaw.exe" -jar "%1" %*
enthalten.

Ein Fehlen der -jar Anweisung könnte u.U. ein Grund dafür sein, dass Java versucht eine Klasse zu finden, die es nicht gibt (weil sie ja im jar file steckt).
 

delta

Tripel-As

Dabei seit: 15.06.2009

Beiträge: 228

 

17 Zum Seitenanfang

Freitag, 4. März 2011, 14:05

Du solltest mal überprüfen, wie der Registry-Schlüssel für jarfiles aussieht. Der sollte sich bei
HKEY_CLASSES_ROOT\jarfile\shell\open\command
befinden und als Wert
"<Pfad zum Javaordner>\bin\javaw.exe" -jar "%1" %*
enthalten.

Besten Dank!

Der Pfand ging dort zu Notepad.

Da alles funktioniert, kann ihr geschlossen werden :)
 

Ähnliche Themen