2016-08-24 3 views
0

Ich habe ein Java-Projekt und wenn ich versuche, dieses Projekt zu debuggen, habe ich ein Problem. Alle Blöcke nach if (false) Bedingung werden ausgeführt und die Blöcke nach if (true) nicht. Zum Beispiel: Blockieren nach wenn (falsch) ausgeführt wird

Wie Sie sehen können, bin ich im Debug-Modus und Zeile 65 wird ausgeführt und Zeile 61 wird nicht ausgeführt.

Wenn ich tun:

boolean trueValue = Boolean.TRUE; 
boolean falseValue = Boolean.FALSE; 

if(trueValue) { 
    System.out.println("True"); 
} 
if(falseValue) { 
    System.out.println("False"); 
} 

Beide blockes ausgeführt.

Etwas sehr Seltsames geschieht. Nach dem Build habe ich die kompilierten Klassen dekompiliert und der Code ist ok (Für das erste Beispiel in der kompilierten Klasse habe ich nur die Zeile "System.out.println (" True ");" und das ist ok).

Ich bin mit Glassfish-Server, Java 7 und Netbeans. Ich habe die Netbeans neu installiert, die Fenster neu gestartet, das Projekt erstellt und das Projekt bereinigt. Wenn ich ein neues Projekt in Netbeans mache und die obigen Beispiele kopiere, ist alles in Ordnung.

Kann mich Somenone beraten?

+1

aktualisieren Sie den bereitgestellten Code, das ist nicht möglich. –

+2

Machen Sie einen sauberen Build. Der Code mit 'if (false)' verursacht einen nicht erreichbaren Codefehler, und ein nachfolgendes Debugging wird auf dem alten kompilierten Code fortgesetzt. –

+0

Und re Beispiel mit 'Boolean.TRUE' und' Boolean.FALSE'. ** Nein **, sie werden nicht beide ausgeführt: http://ideone.com/J85NRN Genau das Richtige, wie man es erwarten würde. –

Antwort

0

Das Problem wurde gelöst, nachdem ich wieder Glassfish-Server installiert.

Verwandte Themen