2014-09-20 14 views
9

Un problema molto semplice. Cerco di eseguire una demo molto semplice per creare e visualizzare una cornice di Windows da Eclipse e non succede nulla. Nessun errore, nessuna finestra, il codice viene eseguito fino al completamento.Finestra Java JFrame non visualizzata quando viene eseguita da Eclipse

Ho aggiunto i punti di interruzione e ho verificato che il codice funzioni come previsto. Il codice è retta dalla tutorial Java (FrameDemo), ho appena rinominato il pacchetto per adattarsi in cui ho messo (altro codice da questo pacchetto funziona bene):

package ui; 

import java.awt.*; 
import javax.swing.*; 

/* FrameDemo.java requires no other files. */ 
public class FrameDemo { 
    /** 
    * Create the GUI and show it. For thread safety, 
    * this method should be invoked from the 
    * event-dispatching thread. 
    */ 
    private static void createAndShowGUI() { 
     //Create and set up the window. 
     JFrame frame = new JFrame("FrameDemo"); 
     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

     JLabel emptyLabel = new JLabel(""); 
     emptyLabel.setPreferredSize(new Dimension(175, 100)); 
     frame.getContentPane().add(emptyLabel, BorderLayout.CENTER); 

     //Display the window. 
     frame.pack(); 
     frame.setVisible(true); 
    } 

    public static void main(String[] args) { 
     //Schedule a job for the event-dispatching thread: 
     //creating and showing this application's GUI. 
     javax.swing.SwingUtilities.invokeLater(new Runnable() { 
      public void run() { 
       createAndShowGUI(); 
      } 
     }); 
    } 
} 

La mia configurazione (Kepler SR2):

  • eclipse.buildId = 4.3.2.M20140221-1700
  • java.version = 1.8.0_05
  • java.vendor = Oracle Corporation costanti
  • bootloader: OS = MacOSX, ARCH = x86_64, WS = cacao, NL = en_US
  • argomenti Framework: -product org.eclipse.epp.package.java.product -keyring /Users/steve/.eclipse_keyring -showlocation
  • argomenti della riga di comando: -os MacOSX -ws cacao -arch x86_64 -Product org .eclipse.epp.package.java.product -keyring /Users/steve/.eclipse_keyring -showlocation

ho anche controllato Configurazione -> log di errore; ancora niente, nessun errore. Ho provato altre demo simili, stessi risultati.

Qualsiasi aiuto sarebbe apprezzato in quanto sono rimasto bloccato su questo per più di un giorno.

+0

Dovrebbe essere visualizzato poiché non vedo nulla di sbagliato nel codice. Hai provato a ricaricare Eclipse da zero? –

+0

Hai provato a farlo usando un IDE diverso o dal terminale? –

+0

@Vince - esportandolo in un jar, quindi eseguendolo dal terminale funziona, viene visualizzata la finestra. – user4061565

risposta

8

Si è verificato un problema con la libreria. Avevo importato tutti i jar nella directory .lib da jfreechart. In realtà solo due erano necessari e alcuni non necessari erano etichettati come swt e sperimentali. Una volta rimossi tutti quelli che non erano necessari, puliti e ricostruiti, tutto ha funzionato bene.

Stranamente, non è stato possibile modificare l'ordine della libreria jfreechart (che includeva i vasi in conflitto) nella parte inferiore, è necessario rimuovere i vasi aggiuntivi.

Non un problema con jfreechart, ovviamente il mio problema di importazione della libreria. Se ci si imbatte in questo suggerisco di provare a rimuovere alcune delle librerie che potrebbero essere in conflitto, quindi pulire, compilare ed eseguire nuovamente.

Grazie a Hovercraft Full Of Eels ea tutti gli altri che hanno risposto per avermi aiutato.

+0

Ancora, ben fatto. –

+0

Interessante! Ho ricevuto il problema SAME. Non avrei mai pensato come importare più barattoli del necessario potesse averlo causato. Comunque, bella cattura! –

+0

molto vero. ho avuto un problema simile La mia app non si avviava, non succedeva nulla quando usavo correre. Rimosso jfreechart-1.0.19-swt.jar dalla lib di riferimento e tutto funzionava liscio !!! –

Problemi correlati