COnfiguração do JDK naum funciona

Configurei minha JDK, conforme o tópico fixo do fórum, porém não funcionou.
Nas variáveis de ambiente, coloquei o seguinte:

Nome da variável: JAVA_HOME
Valor da variável: C:\j2sdk1.4.2_07

Nome da variável: PATH
Valor da Variável: C:\j2sdk1.4.2_07\bin

Porém, qdo tento rodar minha .class, utilizando:

java Main

Retorna a seguinte mensagem de erro:

Exception in thread “main” java.lang.NoClassDefFoundError : Main (wrong name: javadatabase/main)

O q eh isso?! Fiz algo errado?

Julio Romano

Fala Júlio!

Posta pra gente o código…

Vc ta programando direto na linha do DOS ou ta usando um JCreator ou Eclipse?

Abraços!

tah ae meu código:

package javadatabase;
import java.sql.*;
import javax.swing.*;
/**
 *
 * @author Julio Romano
 */
public class Main {
    
    /** Creates a new instance of Main */
    public Main() {
    }
    
    public void executa(){
               Connection con = null;

    try {
      Class.forName("com.mysql.jdbc.Driver").newInstance();
      con = DriverManager.getConnection("jdbc:mysql:///sistema", "root", "master");
      
      Statement st = null;

        // Obtain connection here
        st = con.createStatement();
        
        ResultSet rs = null;

        rs = st.executeQuery("SELECT fabricante FROM placamae");
        JOptionPane mensagem = new JOptionPane();
        StringBuffer resultados = new StringBuffer();
        
        while(rs.next()){
            //System.out.println(rs.getString("fabricante"));
            resultados.append("Fabricante: ");
            resultados.append(rs.getString("fabricante"));
            resultados.append("\n");
        }
        
        mensagem.showMessageDialog(null,resultados.toString());

    } catch(Exception e) {
      System.err.println("Exception: " + e.getMessage());
    } finally {
      try {
        if(con != null)
          con.close();
          System.exit(0);
      } catch(SQLException e) {}
    }
    }
    
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        Main vai = new Main();
        vai.executa();
        System.exit(0);
    }
    
}

eu to usando a IDE NetBeans. Nela, o código executa normalmente!!

Beleza!!

Como sua classe está num pacote, você tem que executá-la colocando o nome do pacote, no seu caso:

java javadatabase.Main

E tem que fazer isso, na pasta mãe de “javadatabase” ou seja, na pasta raiz do projeto.

Vê se funciona…

Abraços!

fiz isso, porém continua o mesmo erro!
o q pode ser?!

Grato

Julio Romano

Ummm… tentou colocar o Classpath??

se seu programa estivesse em

c:\meuProjeto\javadatabase\Main.class

poderia rodar assim

java -cp c:\meuProjeto javadatabase.Main

Ve se resolve…

Abs! =)

P.S - Se o netBeans estiver configurado para separar os .class dos .java confere se vc ta colocando a pasta raiz certa… de onde ficam os .class.