Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2015
    Messaggi
    5

    No MAIN classes found! : perché se invece c'è?

    Ciao a tutti;
    perchè NetBeans 7.1.2 mi dice, quando tento la run del progetto: <<no main classes found?>>
    io la main class l'ho messa:

    [estratto del programma:]

    [...]
    Panel container = new Panel(new GridLayout(2,2));
    Panel buttons = new Panel(new GridLayout(4,3));

    /**
    * @param args the command line arguments
    */
    public void main () {

    provaFinestre();
    float sum = a + b;

    }

    public void provaFinestre() {
    zero.addActionListener(new Listener());
    one.addActionListener(new Listener());
    two.addActionListener(new Listener());
    three.addActionListener(new Listener());
    four.addActionListener(new Listener());
    five.addActionListener(new Listener());
    [...]

    SCUSATEMI se sarà una stupidata ma ne sto provando un po' ma niente

    mi aiutate per favore?

    Grazie in anticipo

  2. #2
    in java il metodo main è definito in maniera specifica:
    codice:
    public static void main(String[] args) {
       // DO STUFF
    }
    il tuo non è un metodo main valido per java.

    un pò grave non sapere questo e provare a creare già una interfaccia grafica...

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2015
    Messaggi
    5
    Quote Originariamente inviata da fermat Visualizza il messaggio
    il tuo non è un metodo main valido per java.

    un pò grave non sapere questo e provare a creare già una interfaccia grafica...
    Questo lo sapevo: all'inizio lo avevo definito così ma non funzionava e mi dava altri warnings, ho semplicemente provato a cambiare, tanto che comunque così non funziona lo stesso...

  4. #4
    bhe non è che le cose funzionano inventandosi i main.

    comunque, anche con il main corretto ottieni lo stesso errore?
    come compili il programma?
    usi un ide?

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da s_e_b_a Visualizza il messaggio
    tanto che comunque così non funziona lo stesso...
    Se anche metti il main corretto, quel metodo provaFinestre è "di istanza" e dal main non puoi invocarlo semplicemente con provaFinestre();

    Forse qualche "base" in più su Java e sulla programmazione ad oggetti non guasterebbe ... che dici?
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2015
    Messaggi
    5
    Quote Originariamente inviata da fermat Visualizza il messaggio
    comunque, anche con il main corretto ottieni lo stesso errore?
    con il metodo corretto l'errore è che un metodo non statico non può essere riferito in un contesto statico (ragione per cui avevo cambiato il main)

    Quote Originariamente inviata da fermat Visualizza il messaggio
    come compili il programma?
    usi un ide?
    Il programma è compilato con la build di NetBeans, versione 7.1.2, come dicevo all'inizio:
    Quote Originariamente inviata da s_e_b_a
    ...perchè NetBeans 7.1.2 mi dice...

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2015
    Messaggi
    5
    Ad ogni modo, questo è il codice:

    codice:
    package provaFinestre;
    
    import java.awt.*;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    
    
    /**
     *
     * @author s_e_b_a
     */
    public class ProvaFinestre extends Frame {
        static float a, b;
        public int tmp = 0;
        
        Label welcome = new Label("Started: Prova Finestre");
        Label result = new Label("Risultato:");
        
        Button zero = new Button("0");
        Button one = new Button("1");
        Button two = new Button("2");
        Button three = new Button("3");
        Button four = new Button("4");
        Button five = new Button("5");
        Button six = new Button("6");
        Button seven = new Button("7");
        Button eight = new Button("8");
        Button nine = new Button("9");
        
        Button plus = new Button("+");
        
        Panel container = new Panel(new GridLayout(2,2));
        Panel buttons = new Panel(new GridLayout(4,3));
        
         /**
         * @param args the command line arguments
         */
        public static void main(String[] args) { 
           
           provaFinestre();
           float sum = a + b;
           
        }
        
        public void provaFinestre() {
            zero.addActionListener(new Listener());
            one.addActionListener(new Listener());
            two.addActionListener(new Listener());
            three.addActionListener(new Listener());
            four.addActionListener(new Listener());
            five.addActionListener(new Listener());
            six.addActionListener(new Listener());
            seven.addActionListener(new Listener());
            eight.addActionListener(new Listener());
            nine.addActionListener(new Listener());
            plus.addActionListener(new Listener());
            
            zero.setActionCommand("CLICK");
            one.setActionCommand("CLICK");
            two.setActionCommand("CLICK");
            three.setActionCommand("CLICK");
            four.setActionCommand("CLICK");
            five.setActionCommand("CLICK");
            six.setActionCommand("CLICK");
            seven.setActionCommand("CLICK");
            eight.setActionCommand("CLICK");
            nine.setActionCommand("CLICK");
            plus.setActionCommand("CLICK");
            
            container.add(buttons, BorderLayout.WEST);
            buttons.add(zero);
            buttons.add(one);
            buttons.add(two);
            buttons.add(three);
            buttons.add(four);
            buttons.add(five);
            buttons.add(six);
            buttons.add(seven);
            buttons.add(eight);
            buttons.add(nine);
            
            pack();
            show();
            
        }
    
    
        
        public class Listener implements ActionListener {
            
            public void actionPerformed (ActionEvent e, String buttonName) {
                String command = e.getActionCommand();
                String name = buttonName;
                
                if (command.compareTo("CLICK")==0){
                if (tmp == 0){
                if ("0".equals(name)) a = 0;
                if ("1".equals(name)) a = 1;
                if ("2".equals(name)) a = 2;
                if ("3".equals(name)) a = 3;
                if ("4".equals(name)) a = 4;
                if ("5".equals(name)) a = 5;
                if ("6".equals(name)) a = 6;
                if ("7".equals(name)) a = 7;
                if ("8".equals(name)) a = 8;
                if ("9".equals(name)) a = 9;
                
                tmp++;
                }
                
                if (tmp == 1){
                if ("0".equals(name)) b = 0;
                if ("1".equals(name)) b = 1;
                if ("2".equals(name)) b = 2;
                if ("3".equals(name)) b = 3;
                if ("4".equals(name)) b = 4;
                if ("5".equals(name)) b = 5;
                if ("6".equals(name)) b = 6;
                if ("7".equals(name)) b = 7;
                if ("8".equals(name)) b = 8;
                if ("9".equals(name)) b = 9;
                
                tmp++;
                }
                
                if (tmp > 1) System.err.println("tmp variable error!");
        }
       }
            
           
            @Override
            public void actionPerformed(ActionEvent ae) {
                throw new UnsupportedOperationException("Not supported yet.");
            }
        }
    }

  8. #8
    hai letto il post di andbin?
    concordo anche sulle basi di java.
    non si cambia il metodo main standard, per un avviso del genere.
    mi sa che dovresti ripartire da zero con lo studio di java.

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.