Newsgroup: it.comp.java
Titolo: Strano errore

Salve ragazzi dopo giorni sono riuscito a scaricare j2re sdk, 
digito javac file.java e poi java file, ma mi da il seguente errore 
Exception in thread "main" java.lang.NoClassDefFoundError:
cosa vuol dire? Premetto che programmo in ambiente linux, grazie a chi mi
vorrà aiutare :-)
Metto anche la sorgente qui, così chi vuole può controllare, è un semplice
programma che calcola l'area di un triangolo
package untitled1;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
/**
 * <p>Title: </p>
 * <p>Description: </p>
 * <p>Copyright: Copyright (c) 2004</p>
 * <p>Company: </p>
 * @author not attributable
 * @version 1.0
 */
public class Area extends JFrame {
  JPanel contentPane;
  JButton Calcola = new JButton();
  JLabel jLabel1 = new JLabel();
  JTextField jTextField1 = new JTextField();
  JTextField jTextField2 = new JTextField();
  JLabel jLabel2 = new JLabel();
  JLabel jLabel3 = new JLabel();
  //Construct the frame
  public Area() {
    enableEvents(AWTEvent.WINDOW_EVENT_MASK);
    try {
      jbInit();
    }
    catch(Exception e) {
      e.printStackTrace();
    }
  }
  //Component initialization
  private void jbInit() throws Exception  {
    contentPane = (JPanel) this.getContentPane();
    jLabel3.setText("Altezza");
    jLabel3.setBounds(new Rectangle(1, 94, 84, 23));
    jLabel2.setText("Base");
    jLabel2.setBounds(new Rectangle(0, 66, 84, 23));
    jTextField2.setText("");
    jTextField2.setBounds(new Rectangle(93, 93, 123, 30));
    jTextField1.setText("");
    jTextField1.setBounds(new Rectangle(93, 63, 123, 30));
    jLabel1.setText("");
    jLabel1.setBounds(new Rectangle(79, 177, 131, 33));
    Calcola.setBounds(new Rectangle(173, 228, 190, 25));
    Calcola.setText("Calcola");
    Calcola.addActionListener(new Area_Calcola_actionAdapter(this));
    contentPane.setLayout(null);
    this.setSize(new Dimension(400, 300));
    this.setTitle("Frame Title");
    contentPane.add(Calcola, null);
    contentPane.add(jLabel1, null);
    contentPane.add(jLabel2, null);
    contentPane.add(jTextField1, null);
    contentPane.add(jLabel3, null);
    contentPane.add(jTextField2, null);
  }
  //Overridden so we can exit when window is closed
  protected void processWindowEvent(WindowEvent e) {
    super.processWindowEvent(e);
    if (e.getID() == WindowEvent.WINDOW_CLOSING) {
      System.exit(0);
    }
  }
  void Calcola_actionPerformed(ActionEvent e) {
    int a = Integer.parseInt(jTextField1.getText()) *
Integer.parseInt(jTextField2.getText());
    jLabel1.setText("Risultato = "+a/2);
  }
  public static void main(String[] args){
    try{
      UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
    }
    catch(Exception e){}
  Area a = new Area();
  a.setVisible(true);
}
}
class Area_Calcola_actionAdapter implements java.awt.event.ActionListener {
  Area adaptee;
  Area_Calcola_actionAdapter(Area adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.Calcola_actionPerformed(e);
  }
}

vedendo il codice intuisco che lhai scritto con Jbuilder.
Jbuilder ha un modo tutto suo di codificare,infatti anche a me succede che
un programma scritto e compilato con jbuilder funziona alla grande,ma se lo
compilo a mano dà problemi.
io cmq controllerei che il Classpath è settato bene,spesso questi problemi
sono dovuti al problema di classpath
ciao

 package untitled1;
Probabilmente il problema deriva da questo. devi chiamare java
untitled1.Area e Area.class deve trovarsi in una directory di nome
untitled1.
La directory corrente deve essere quella subito sopra untitled1 oppure devi
impostare il classpath.
Vado con un esempio :)
mettiamo che tu sia in C:\programmi\
crei la directory C:\programmi\untitled1\
ci metti il tuo Area.class
con directory corrente C:\programmi\ (quindi facendo, se serve "cd C
\programmi\") scrivi java untitled1.Area.
Ora mettiamo invece che la tua dir corrente sia C:\Documenti\pincopallo\
se vuoi eseguire il programma da qui devi dirgli dova andarlo a cercare,
quindi:
java -classpath C:\programmi\ untitled1.Area
ok? Gli dici che a partire da C:\programmi\ deve cercare la classe Area
nella dir (che corrisponde ad un package) untitled1
Ciao
Matteo
-- 
chi sono e soprattutto chi non sono:
http://www.ilnomedeldominio.it
un piccolo programma per studenti universitari:
http://inutility.ilnomedeldominio.it

 vorr… aiutare :-)
http://xoomer.tin.it/computer/csadun/javafaq.html
-- 
You dont know what to do when you dont know what you're doing.
http://space.tin.it/computer/csadun