Hilfe, Java spielt verrückt

Status
Nicht offen für weitere Antworten.
K

Kater Karlo

Gast
Hallo,
eins vorweg, ich programmiere seit über 10 Jahren in Java, weiß also was ein Konsturktor ist :lol:
Leider kann ich meinen vollständigen Programmcode nicht posten, da er nicht Open-Source stehen darf (leider) und zudem sehr Umfangreich ist. Aber vielleicht kann mir ja jemand auch ohne genauere Source-Kentnisse weiterhelfen.
Also, mein System is Debian Lenny, Java-Version 1.6.0_07, Eclipse 3.2.2.

Folgendes:
Ich rufe in meinem Programm den Konstruktor der Klasse A auf. Im Konstruktor steht unter anderem ein System.out.println("TESTTTT");

Starte ich mein Programm, wird innerhalb des Programmes eine Instanz von A erzeugt, und Instanzmethoden ( keine statischen Methoden ) aufgerufen. Die Methoden machen leider nicht dass, was sie sollen, aber fest steht, ich kann über die Instanz Methoden aufrufen. ABER(!) der Test-String wird nicht ausgegeben! Ich kann nicht-statische Methoden über eine Instanz der Klasse A aufrufen, ohne dass die Ausgabe im Konsturktor getätigt wird.
Schreibe ich jedoch ein System.exit(1); direkt hinter die Ausgabe-Anweisung, wird der Test-String ausgegeben. Leider ist das nicht der Sinn des Programms. Im Programm gibt es keine Threads oder ähnliches. Es scheint so, als wenn der Konstruktor nur Korrekt abgearbeitet wird, wenn ich in ihm das Programm direkt verlasse.

Hat jemand eine Idee, wo der Fehler liegen könnte?
 

FArt

Top Contributor
Hört sich verwirrend an.

Eines kann man sicher sagen: der Fehler sitzt davor.

Schon mal gedebuggt? Da wirst du jede Zeile erreichen und sehen was vor sich geht.

Geht den die Ausgabe auf eine Konsole oder wird sie evtl. umgeleitet? Mach lieber Logging (evtl. in ein File).

Poste nicht den Code, isoliere das Problem und schreibe ein kleines Beispielprogramm. Vorteil: bis du den Fehler reproduziert hast, weißt du was du falsch gemacht hast und musst das Beispielprogramm nicht mehr posten. Ist dann auch nicht so peinlich ;-)

Wenn Sachen funktionieren, Zeilen aber vermeintlich nicht angesprungen werden, sind gerne Exceptions im Spiel, die vor der Ausgabe geworfen werden, dann gefangen und ingoriert werden. Der Code läuft dann "ganz normal" weiter...
 

Wildcard

Top Contributor
Im einfachsten Fall liegt es an einem gepufferten Output Stream der noch nicht geflushed wurde.
 
K

Kater Karlo

Gast
Hi,
mhm, normalerweise ist man ja immer recht fix, die JVM zu beschuldigen, und später dann doch fest zu stellen, dass man irgendwo ein Leerzeichen vergessen hat :D
Leider ist das bei mir nicht der Fall.

Folgendes: ich bin das Programm jetzt schritt für Schritt mit dem Debugger durch gelaufen. Das Programm ist 100% das selbe, außer das ich es eben im Debugger hab laufen lassen.
Ich habe in die Methode die den Konstruktor aufruft ein Breakpoint gesetzt, und immer brav auf "Step over" gedrückt.
Was passiert? Der Test-String wird ausgegeben, die lokalen Variablen initialisierung im Konsturktor geschieht wie gewünscht.
Führe ich das Programm normal aus, also nicht im Debuggermodus: Selber Fehler wie vorher: Initlialisierungen schlagen fehl, Konstruktor wird nicht aufgerufen.

Ich werd noch verrückt. Das darf doch eigentlich nciht sein, oder? Ich habe nix am Code geändert???:L
 
K

Kater Karlo

Gast
Wildcard hat gesagt.:
Im einfachsten Fall liegt es an einem gepufferten Output Stream der noch nicht geflushed wurde.

Leider ist es nicht nur die Ausgabe, die Fehl schlägt. Ich fülle im Konsturktor auch ein Set mit werden aus einem String.
Dies geschieht nur leider eben nicht. Also an gepufferter Ausgabe kanns nicht liegen.
 

FArt

Top Contributor
Kater Karlo hat gesagt.:
Hi,
mhm, normalerweise ist man ja immer recht fix, die JVM zu beschuldigen, und später dann doch fest zu stellen, dass man irgendwo ein Leerzeichen vergessen hat :D
Leider ist das bei mir nicht der Fall.

Folgendes: ich bin das Programm jetzt schritt für Schritt mit dem Debugger durch gelaufen. Das Programm ist 100% das selbe, außer das ich es eben im Debugger hab laufen lassen.
Ich habe in die Methode die den Konstruktor aufruft ein Breakpoint gesetzt, und immer brav auf "Step over" gedrückt.
Was passiert? Der Test-String wird ausgegeben, die lokalen Variablen initialisierung im Konsturktor geschieht wie gewünscht.
Führe ich das Programm normal aus, also nicht im Debuggermodus: Selber Fehler wie vorher: Initlialisierungen schlagen fehl, Konstruktor wird nicht aufgerufen.

Ich werd noch verrückt. Das darf doch eigentlich nciht sein, oder? Ich habe nix am Code geändert???:L

Was passiert bei System.exit... die VM beendet sich schon, oder?

Wie sieht es mit dem Beispielprogramm aus?

Was heißt "Initialisierung schlägt fehl"? Fehlermeldungen?

Reicher dein Programm u.U. mit "extreme logging" an...
 
K

Kater Karlo

Gast
Ah, ich bin einen Schritt weiter. Anscheinend geschieht die Ausgabe doch, wird aber sofort, nach einem Bruchteil einer Sekunde wieder überschrieben d.h. die Konsole gelöscht. Der nachfolgende Text wird aer immer schön hinten dran gehängt. Seltsam. habe ich bisher bei Eclipse noch nicht gesehen.
Jetzt muß ich nur noch herausfinden, warum das so ist, warum irgendwas bei meiner Initialisierung nicht funkioniert.
 
G

Guest

Gast
FArt hat gesagt.:
Was passiert bei System.exit... die VM beendet sich schon, oder?

Wie sieht es mit dem Beispielprogramm aus?

Was heißt "Initialisierung schlägt fehl"? Fehlermeldungen?

Reicher dein Programm u.U. mit "extreme logging" an...

Ja, bei System.exit!) endet die VM.
Beispielprogramm ist erstmal zu heftig, der Code ist sehr verschachtelt, mit vielen Klassenhierarchien, Polymorphismen etc.
Initilialisierung schlägt fehl heißt, dass ich im Konstruktor ein Set mit Strings aus einer Map fülle. Leider ist das Set aber irgendwie immer leer, die Initilisierung des Sets schlägt fehl.

Bin gerade dabei micht mit mit dem Debugger intensiv rumzuschlagen :)
Mal schaun, ob das Ding hält was es verspricht.
 

FArt

Top Contributor
Der Debugger von Eclipse ist nicht so der Renner, reicht aber sicher für dieses Problem.

Was passiert, wenn du das Programm ohne Eclipse laufen lässt, mit einer richtigen Konsole? Denn eigentlich ist eine Konsole ein Stream... löschen ist nicht...
 
K

Kater Karlo

Gast
Problem gelöst! :) Danke für die Hilfe.
Es lag an der Eclipse-Konsole, bzw. an der Beschränktheit der Größe.
Das Programm hat soviel Debugging-Output auf die Konsole geschrieben, dass es so aussah, als wenn die erste Zeile immer gelöscht werden würde.

Ich steig jetzt sofort auf log4j um. Hatte ich eh schon die ganze Zeit vor :)
 

FArt

Top Contributor
Wildcard hat gesagt.:
FArt hat gesagt.:
Der Debugger von Eclipse ist nicht so der Renner, reicht aber sicher für dieses Problem.
Was fehlt dir denn daran?

Wer schon mal mit IntelliJ (besonder Remote) gedebuggt hat weiß was noch alles möglich wäre... HotSwap, Instance Highlighting und vieles mehr. Bei "evaluate expression" kann ich bei einem Breakpoint ganze Codefragmente mit code completion erstellen und im Kontext des Breakpoints ausführen lassen... Debugging von Groovy, Ruby, JavaScript (habe ich nicht neulich auch ANT Skripten gesehen?), ...

Es gibt noch mehr, man muss es ausprobiert haben.

http://www.jetbrains.com/idea/features/compiler.html
 

Wildcard

Top Contributor
HotSwap
geht

Instance Highlighting
Du meinst die Instanzen einer Klasse anzeigen? Geht

Bei "evaluate expression" kann ich bei einem Breakpoint ganze Codefragmente mit code completion erstellen und im Kontext des Breakpoints ausführen lassen
Bei Eclipse doch auch

debugging von Groovy, Ruby, JavaScript (habe ich nicht neulich auch ANT Skripten gesehen?)
Groovy, Ruby und JavaScript kann ich nichts zu sagen, aber Eclipse hat ANT Debugging.
 

FArt

Top Contributor
Wildcard hat gesagt.:
Auch remote?

Ich habe die neueren Versionen nicht mehr verfolgt, nachdem ich festgestellt hatte, dass IDEA immer ein wenig (oder mehr) die Nase vorn hat... aber Eclipse ist gut, und gibt es für mau...
 

Wildcard

Top Contributor
Debugging ist technisch gesehen immer Remote. Genauere Informationen kann ich dir leider nicht geben, da ich nicht auf entfernten Rechnern/externen Anwendungen Debugge.
Aber schon klar, IntelliJ ist sowas wie der kreative Motor für IDEs, aber insgesamt ist Eclipse schon ein tolles Paket und für RCP Entwicklung dann doch besser geeignet als IntelliJ (obwohl man damit wohl mittlerweile auch Eclipse PlugIns entwickeln können soll), daher bleibe ich bei Eclipse.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Java Programm erstellen hilfe Allgemeine Java-Themen 10
Momo16 Brauche Hilfe - Java Projekt kann nicht erstellt werden Allgemeine Java-Themen 12
Peterw73 Hilfe bei Java gesucht Allgemeine Java-Themen 3
V Hilfe mit Java Code Allgemeine Java-Themen 4
s_1895 Hilfe bei Java Tic Tac Toe Allgemeine Java-Themen 8
M Hilfe bei einer Java Programmieraufgabe! Ab morgen Montag um 08:00 Uhr Allgemeine Java-Themen 5
U Erste Schritte Hilfe bei simplem Glücsspiel in Java Allgemeine Java-Themen 4
E HILFE !! Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/io/FileUtils Allgemeine Java-Themen 4
J Java "Bank Programm" Brauche eure Hilfe Allgemeine Java-Themen 3
D Mit Hilfe von Java aus Excel-Sheet Zellen in neues Excel Dokument kopieren Allgemeine Java-Themen 3
M Input/Output Java + OCR ? Erfahrungen und bitte um Hilfe Allgemeine Java-Themen 12
S Java USB dringend Hilfe! Allgemeine Java-Themen 6
F Brauche Hilfe bei Java Allgemeine Java-Themen 6
S Brauche Hilfe: Prüfungsaufgabe Java Allgemeine Java-Themen 8
G java.exe in System 32. Hilfe!!! Allgemeine Java-Themen 8
M google plus java api - Anfänger sucht Hilfe Allgemeine Java-Themen 7
S brauche Hilfe für ssh connection in java Allgemeine Java-Themen 6
G Java-Hilfe einbauen Allgemeine Java-Themen 2
S Brauche Hilfe bei Planung für JAVA-Programm Allgemeine Java-Themen 3
C Hilfe! Mein Java mag nich mehr ganz... Allgemeine Java-Themen 11
G Java Android Development HILFE !! Allgemeine Java-Themen 2
G Hilfe! Java XMP-Dumper! Allgemeine Java-Themen 2
data89 Bilder mit Java prüfen - suche dringend Hilfe Allgemeine Java-Themen 8
_SeiA_ Hilfe Kleines Java Programm schreiben. Summen. Allgemeine Java-Themen 3
F Hilfe beim Starten einer Java Anwendung unter Windows gesuch Allgemeine Java-Themen 8
S Hilfe ich kann Java nicht installieren! Allgemeine Java-Themen 11
M Java Pattern hilfe Allgemeine Java-Themen 6
BFreakout Hilfe! Java Anwendung läuft nicht. Allgemeine Java-Themen 8
J Java - 4-Buchstaben-Programm. Hilfe. ich hänge fest Allgemeine Java-Themen 7
S java hilfe in deutsch? Allgemeine Java-Themen 7
C Hilfe! Java Control Panel & Limewire Problem! Allgemeine Java-Themen 3
P Hilfe zu java.lang.Object Allgemeine Java-Themen 3
B Entwickeln eines Assemblers unter Java. Hilfe !!!!! Allgemeine Java-Themen 4
W Hilfe bei Methode Allgemeine Java-Themen 14
M Javascript Hilfe bei ToDoList? Allgemeine Java-Themen 1
T Hilfe bei negation von suchabfrage Allgemeine Java-Themen 2
N Hilfe bei RegEx benötigt Allgemeine Java-Themen 3
A Hilfe beim Verständnis Allgemeine Java-Themen 16
T Hilfe bei Programm. IDE: Eclipse mit EV3-Plugin, lejos Allgemeine Java-Themen 8
alinakeineAhnungv Hilfe bei einem Straßenbahn-Projekt von mir Allgemeine Java-Themen 18
Aboya Kugel mit Hilfe von Dreiecken rekursiv zeichnen Allgemeine Java-Themen 2
K Anzeigemöglichkeit von Bildern in JavaFX mit Hilfe von MongoDB GridFS Allgemeine Java-Themen 0
A Preisberechnung, Hilfe Allgemeine Java-Themen 4
M Bräuchte Hilfe bei der Aufgabe Allgemeine Java-Themen 1
W Suche Ursache für NPE - woher kommt sie? (Hilfe beim Debugging) Allgemeine Java-Themen 19
J Hilfe, Jar Datei kann nicht ausgeführt werden Allgemeine Java-Themen 2
B Bei Email: FW / AW... - Hilfe bei String suche Allgemeine Java-Themen 21
K OOP Suche Hilfe + Erklärung für eine Hausaufgabe Allgemeine Java-Themen 1
K Objektorientierung, hilfe Allgemeine Java-Themen 9
V Bilder bei bestimmten Zeiten wechseln, bitte um Hilfe Allgemeine Java-Themen 5
D Hilfe bei Informatik Hausaufgaben Allgemeine Java-Themen 30
RalleYTN Brauche Hilfe beim Run-Length-Decoding Allgemeine Java-Themen 9
S Hilfe bei dem Auslesen einer YAML Datei Allgemeine Java-Themen 8
F NetBeans Hilfe!!! Allgemeine Java-Themen 23
H Schiffe versenken JButton Schiffe mit GUI verbinden Hilfe! Allgemeine Java-Themen 2
M Bitte Hilfe mit REGEX (Negieren) Allgemeine Java-Themen 4
S GetMethode erstellen mit Hilfe von Parametern Allgemeine Java-Themen 9
B Hilfe bei Übungsblätter Allgemeine Java-Themen 9
O Erste Schritte Benzinverbrauch Code Hilfe Allgemeine Java-Themen 3
C Hilfe Bei Vegas Slide Allgemeine Java-Themen 0
B Hilfe!! spiel um Funktion des Selektierens erweitern (mit ASCII-Tabelle) Allgemeine Java-Themen 3
Ice4P4rty Hilfe Bei Promillerechner Allgemeine Java-Themen 9
C Atfx mit Hilfe von OpenAtfx auslesen Allgemeine Java-Themen 1
perlenfischer1984 Hilfe bei Design (Pattern) Allgemeine Java-Themen 5
G Hilfe bei Projektarbeit Allgemeine Java-Themen 5
GenerationLost Input/Output Custom Serialization - hilfe bei Realisierung Allgemeine Java-Themen 8
J Hilfe!!! Ausbildung Allgemeine Java-Themen 14
H Hilfe bei Erstellung eines Hilfe Fenster bei Tastendruck (F1 bei Win98) Allgemeine Java-Themen 5
B Swing Hilfe bei Abfrage von Benutzernamen und Passwort Allgemeine Java-Themen 2
T Hilfe bei Code Allgemeine Java-Themen 3
U Swing Hilfe beim Quellcode für ein Codierungs-/Decodierungsprogramm Allgemeine Java-Themen 9
S Hilfe bei Gui Allgemeine Java-Themen 3
O Best Practice Hilfe bei Algorithmus gesucht Allgemeine Java-Themen 10
GRAZZ0R Hilfe zum Spiel Mensch ärger dich nicht Allgemeine Java-Themen 1
C Hilfe bei den Ausgaben Allgemeine Java-Themen 4
K Hilfe bei GUI für Pizza-Service Allgemeine Java-Themen 11
J Hilfe bei Datumsberechnung aus Textfeld Allgemeine Java-Themen 10
I Bitte Drngend hilfe Allgemeine Java-Themen 2
C Hilfe bei NoClassDefFoundError Allgemeine Java-Themen 14
C Hilfe bei einer Fehler meldung Allgemeine Java-Themen 3
I Methoden Schnelle Hilfe benötigt - Kleines Video/Slideshow aus mehreren Bildern erstellen Allgemeine Java-Themen 3
C Hilfe bei einer Point Ausgabe Allgemeine Java-Themen 7
S Probleme mit meinem MacBook Pro DRINGEND HILFE erbeten! Allgemeine Java-Themen 17
N Erste Schritte [HILFE] effizienter,leistungsfähigermbackground Pixelbot Allgemeine Java-Themen 5
A Hilfe gesucht Allgemeine Java-Themen 44
X ArrayList will nicht so wie ich will. Hilfe Allgemeine Java-Themen 8
C Hilfe bei einer Fehlermeldung Allgemeine Java-Themen 5
C Hilfe bei MalformedURLException Allgemeine Java-Themen 7
D Baum zeichnen hilfe Allgemeine Java-Themen 4
M Hilfe bei parseInt Allgemeine Java-Themen 4
F Compiler-Fehler Hilfe bei Startup error Allgemeine Java-Themen 3
F Socket NullPointerException Bitte um hilfe! Allgemeine Java-Themen 12
M Brauche Hilfe bei Quellcodeverständnis Allgemeine Java-Themen 4
B Zahlen ausgeben hilfe! Allgemeine Java-Themen 8
X Hilfe bei Programm Allgemeine Java-Themen 5
zer0zer0 Best Practice apache common cli - optionen für hilfe ausblenden Allgemeine Java-Themen 5
F Bitte um Hilfe! Allgemeine Java-Themen 5
S Hilfe bei geeignetem Pattern (Decorierer) Allgemeine Java-Themen 2
D Brauche Hilfe bei Rechnung (Exponentiation) Allgemeine Java-Themen 12
S Hilfe bei simplem Programm Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben