Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Exception in thread "main" java.lang.NoSuchMethodError: main

    Ciao a tutti!
    Ho provato a lanciare la compilazione di due layout praticamente uguali, unica differenza: uno è su sfondo grigio e l'altro ha un'immagine come sfondo. Solo che il primo me l'ha compilato, al secondo invece mi ha dato l'eccezione: "Exception in thread "main" java.lang.NoSuchMethodError: main".
    Voi sapete qualcosa di questo errore? Cosa vuol dirmi il compilatore?
    Gato

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Exception in thread "main" java.lang.NoSuchMethodError: main

    Originariamente inviato da fpertegato
    Ho provato a lanciare la compilazione di due layout praticamente uguali, unica differenza: uno è su sfondo grigio e l'altro ha un'immagine come sfondo. Solo che il primo me l'ha compilato, al secondo invece mi ha dato l'eccezione: "Exception in thread "main" java.lang.NoSuchMethodError: main".
    Voi sapete qualcosa di questo errore? Cosa vuol dirmi il compilatore?
    Purtroppo non è molto chiaro. Innanzitutto cosa intendi per "compilazione di due layout"? Sono due applicazioni differenti?

    E comunque se hai quella eccezione non è un problema di "compilazione" ma un problema a runtime quando si avvia la applicazione, che se ne deduce non c'è o non trova il ben noto main()

    Ma senza vedere il codice bisognerebbe avere la sfera di cristallo ....
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Si,effettivamente hai ragione, posto il codice dell'applet che non riesco a lanciare di seguito:

    codice:
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.io.*; // importo il pacchetto per l'Input Output
    import javax.imageio.*;
    import java.awt.image.*;
    
    public class Layoutsparso2 extends JApplet {
    
        JButton[] bottone;
        JPanel pannelloBottoni; 
        Container pannelloApplet;
    
        public void init() {
    	// Definisco il layout dell'applet: 
    
    	pannelloApplet = getContentPane();
    	pannelloApplet.setLayout(new BorderLayout());
    
    	// inseriremo i 6 bottoni non direttamente dell'applet, 
    	// ma in un pannello che verra' inserito nel centro dell'
    	// applet. Costruiamo il pannello: 
    
    	pannelloBottoni = new JPanel();
    
    	// definisco il BorderLayout per il pannelloBottoni:
    	pannelloBottoni.setLayout(new BorderLayout());
    	// definisco il colore di fondo del pannelloBottoni:
    //	pannelloBottoni.setBackground(Color.black);
    BufferedImage img = null;
    try {
    img = ImageIO.read(new File("/home/jekotojava/Immagini/Jekologo.png"));
    } catch (IOException e) {
    }
    	// definisco un array di 6 bottoni.
    	bottone = new JButton[6];
    
    	// inizializzo i 6 bottoni e li aggiungo al pannelloBottoni.
    	// Etichetta dei bottoni:
    	String[] nomeBottone = {"bott. 1", "bott. 2", "bott. 3", 
    				"bott. 4", "bott. 5", "bott. 6"};
    
    	// Colore di sfondo dei bottoni: 
    	Color[] coloreBottone = {Color.red, Color.white, Color.yellow,
    				 Color.cyan, Color.green, Color.magenta};
    
    	for (int i = 0; i < bottone.length; i++) {
    	    bottone[i] = new JButton(nomeBottone[i]);
    	    bottone[i].setBackground(coloreBottone[i]);}
    
    	// Aggiungo i 6 bottoni nel seguente modo: il primo a NORTH, 
    	// il secondo a SOUTH, il terzo a WEST, il quarto a EAST 
    	// e gli ultimi due al centro.
    	pannelloBottoni.add(bottone[0], BorderLayout.NORTH);
    	pannelloBottoni.add(bottone[1], BorderLayout.SOUTH);
    	pannelloBottoni.add(bottone[2], BorderLayout.WEST);
    	pannelloBottoni.add(bottone[3], BorderLayout.EAST);
    
    	// per inserire due bottoni al centro, prima li metto 
    	// in un JPanel e poi inserisco il JPanel:
    
    	JPanel pannBottCentro = new JPanel();
    	pannBottCentro.setLayout(new FlowLayout());
    	pannBottCentro.add(bottone[4]);
    	pannBottCentro.add(bottone[5]);
    	pannelloBottoni.add(pannBottCentro, BorderLayout.CENTER);
    
    	// inserisco il pannelloBottoni nel centro dell'applet: 
    	pannelloApplet.add(pannelloBottoni, BorderLayout.CENTER); }}
    questa è l'applet che non riesco a lanciare (ed hai ancora ragione: son riuscito a compilarla, era a lanciarla che mi dava problemi: eh, incolpo la sveglia precoce per questo!)
    Gato

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da fpertegato
    questa è l'applet che non riesco a lanciare (ed hai ancora ragione: son riuscito a compilarla, era a lanciarla che mi dava problemi:
    Ma hai fatto una "applet" e le applet non prevedono un main() ... hanno un "ciclo di vita" ben diverso.

    Insomma, una applet non la avvii con il solito java BlaBla ma deve "vivere" dentro una pagina HTML (all'interno di un browser) che contiene l'apposito tag per incorporare una applet.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Ah, è vero devo avviarla con l'appletviewer!!
    Grazie per l'aiuto, essendo nuovo di Java ogni tanto mi annego in un bicchier d'acqua!!
    Gato

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.