AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

[JAVA|Eclipse] .jar debuggen?

Ein Thema von FAlter · begonnen am 2. Jan 2009 · letzter Beitrag vom 7. Jan 2009
Antwort Antwort
Benutzerbild von FAlter
FAlter

Registriert seit: 21. Jul 2004
Ort: Ostfildern
1.096 Beiträge
 
FreePascal / Lazarus
 
#1

[JAVA|Eclipse] .jar debuggen?

  Alt 2. Jan 2009, 21:14
Hi,

ich werde demnächst ein Programm verbessern, dass etwas verbesserungswürdig ist. Leider ist es ein Java-Programm, dass mit der Eclipse-IDE entwickelt wurde. Ich weiß, dass wir4 hier in einem Delphi-Forum sind, aber es werden eh maximal zwei JAVA-Projekte werden, und dafür will ich mich nicht extra in einem Java-Forum neu registrieren.

Nun klappt es aber nicht, wenn ich auf Debug klicke, wird das Programm sofort wieder mit einer Exception abgebrochen, irgendein image wäre nicht gefunden worden (kann ja demnächst nochmal die genaue Meldung posten), und leider gibt es dazu keine Zeilennummer oder sonstwas. Es stoppt nicht mal im Debugger, sondern Java schreibt eine Nachricht in die Konsole und das wars auch schon.

Erstelle ich dagegen eine .jar-Datei und starte diese dann ohne Debugger (Doppelklick im Explorer = javaw -jar ...), dann läuft das Programm. Allerdings möchte ich es beim Entwickeln lieber über den Debugger starten, Breakpoints setzen dürfen und so.

In der BA bei den kleinen Aufgaben dort hat das Debuggen problemlos geklappt, allerdings haben wir da auch keine JARs erstellt.

Mfg
FAlter
Felix Alter
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#2

Re: [JAVA|Eclipse] .jar debuggen?

  Alt 2. Jan 2009, 21:56
Hi,
wie genau startest Du denn den Debugger?

An sich ist das Debuggen mit Eclipse total einfach. Ob Du die Dateien nun in einer Jar hast oder direkt in einem Verzeichnis ist eigentlich egal (für Java sind .jars transparent). Startest Du ein Programm mittels "java -jar", dann wird das zugehörige Manifest - File gelesen und interpretiert. Wichtige Optionen sind da erstmal die Main-Class und natürlich der Classpath. Hier solltest Du entsprechend beim Debuggen sicherstellen, dass Du die Main-Class auswählst und startest. Zudem musst Du bei Eclipse immer darauf achten, dass Du für ein neues Projekt auch immer den "vollständigen" Weg gehen musst, also z.B. beim Starten / Debuggen Start/Debug -> as Java Project. Sonst wird das zuletzt gewählte Projekt gestartet.

Um Dir hier besser helfen zu können, müsstest Du genauer sagen, was Du genau gemacht hast.

Besten Gruß,
Der Unwissende
  Mit Zitat antworten Zitat
Benutzerbild von FAlter
FAlter

Registriert seit: 21. Jul 2004
Ort: Ostfildern
1.096 Beiträge
 
FreePascal / Lazarus
 
#3

Re: [JAVA|Eclipse] .jar debuggen?

  Alt 4. Jan 2009, 15:45
Hi,

also ich habe eine Debug Configuration (Java Application) erstellt, wo die Hauptklasse drinsteht. Weitere Einträge habe ich nicht geändert. Optionen zur JAR habe ich keine gefunden.

Die Exception, die mich stört, ist folgende:

Zitat:
Uncaught error fetching image:
java.lang.NullPointerException
at sun.awt.image.URLImageSource.getConnection(Unknown Source)
at sun.awt.image.URLImageSource.getDecoder(Unknown Source)
at sun.awt.image.InputStreamImageSource.doFetch(Unkno wn Source)
at sun.awt.image.ImageFetcher.fetchloop(Unknown Source)
at sun.awt.image.ImageFetcher.run(Unknown Source)
Wie gesagt, wenn ich die JAR erstelle scheint sie zu laufen -- ohne Exception.

Mfg
FAlter
Felix Alter
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#4

Re: [JAVA|Eclipse] .jar debuggen?

  Alt 4. Jan 2009, 15:51
Was mich etwas irritiert ist ehrlich gesagt, dass Du einerseits davon sprichst, dass Du die .jar - Datei startest (um sie zu Debuggen) und andererseits eben davon sprichst, dass Du sie erst erstellst. Kannst Du da noch etwas Klarheit schaffen?

Was ist denn genau die Ausgangslage? Hast Du eine fertige .jar bekommen? Wenn ja, enthält die nur .class Dateien oder auch den Source. Auch für den anderen Fall, liegt der Source vor oder hast Du nur die Klassen? (Ok, Debuggen macht natürlich nur mit Source Sinn).

Wenn Du eine .jar mit Source hast, wie genau hast Du die denn geladen? Musst ja bei Eclipse ein Projekt erzeugen, wie bist Du da vorgegangen, wie hast Du den Code importiert und wie hast Du dann entsprechend die Main-Class festgelegt? Was hast Du sonst gemacht? (z.B. um die Korrektheit des Classpath sicherzustellen)?

Und ist das ein generelles Problem oder speziell auf diese .jar bezogen? Hast Du z.B. einfach mal selbst eine ganz einfache .jar Datei erstellt und versucht die im Nachhinein in Eclipse einzubinden und dort zu debuggen? Wenn ja, klappt das?
  Mit Zitat antworten Zitat
DrTox

Registriert seit: 26. Dez 2008
4 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: [JAVA|Eclipse] .jar debuggen?

  Alt 4. Jan 2009, 17:38
Wie ladest du denn dein Image?
Über
Code:
Image img= Toolkit.getDefaultToolkit().getImage(...)
???,
dann lass dir mal den Pfad deines Image ausgeben.
Wegen der
Code:
java.lang.NullPointerException
würd ich mal sagen, dass das
Image unter dem Pfad/URL nicht finden kann.

Zitat:
Wie gesagt, wenn ich die JAR erstelle scheint sie zu laufen -- ohne Exception.
Sind die Images sichtbar, oder fehlen die einfach nur???
Wenn du mal
Code:
java -jar ...
anstatt
Code:
javaw -jar ...
aufrufst öffnet sich zusätzlich die Console, dann sollte die Exception auch angezeigt werden (wenn in diesem Fall eine geworfen wird).
  Mit Zitat antworten Zitat
Benutzerbild von FAlter
FAlter

Registriert seit: 21. Jul 2004
Ort: Ostfildern
1.096 Beiträge
 
FreePascal / Lazarus
 
#6

Re: [JAVA|Eclipse] .jar debuggen?

  Alt 7. Jan 2009, 15:48
Hi,

ich hab mich nochmal genauer damit beschäftigt.

Also das Problem ist, dass wenn ich die .jar erstelle und starte, gibt es keine Probleme. Verwende ich den Eclipse-Debugger, kommt besagte Meldung, NÄMLICH (und das ist neues Wissen) nachdem in der public static void main die letzte Anweisung aufgerufen wurde. Dies ist die Methode Show von JFrame (bzw. einer abgeleiteten Klasse namens MainFrame). Im Aufrufstack steht nun ganz unten meine Hauptklasse mit dieser Zeile (wird aber in der Java-Ausgabe nicht mehr angezeigt) und darüber nur noch irgendwelcher Fremdcode, zu dem Source usw. unbekannt ist.

Im Anhang mal der Stack laut Eclipse unmittelbar nachdem die Fehlermeldung erschienen ist.

Mfg
FAlter

[edit] Jetzt glaube ich zu wissen was null ist - die URL selbst, d. h. der URL-Fetcher weiß nicht was er fetchen soll. Jedenfalls wird bei URLImageSource.getConnection unter den Variablen this.url angezeigt - mit Wert null. [/edit]

[edit] Die Exception kommt nicht, wenn ich alle JARs (die eigene sowie zwei fremde) im classpath als Bootstrap angebe, allerdings muss ich jedes Mal die jar vor dem Debuggen bauen. Die jardesc eintragen würde zum Absturz der JVM führen. [/edit]
Miniaturansicht angehängter Grafiken
zwischenablage02_203.png  
Felix Alter
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:21 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz