ClassNotFoundException quando eu tento conectar no MySQL

Amigos,

estou com problemas para conectar ao MySQL:

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:169) at br.com.caelum.jdbc.JDBCExemplo.main(JDBCExemplo.java:10)

Código-fonte:

public static void main(String[] args) { try { Class.forName("com.mysql.jdbc.Driver"); Connection con = DriverManager.getConnection( "jdbc:mysql://localhost/teste", "root", ""); System.out.println("Conectado!"); con.close(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } }

Curioso é que nem mesmo de fora do Eclipse eu consigo rodar esse teste. Vejam o printscreen attached onde imprimo o CLASSPATH.

Alguém poderia me ajudar?

Obrigado.

Pelo que consegui ler de sua stacktrace, vc executou a classe passando o nome do arquivo.class, tente java Exemplojdbc…
Pelo Eclipse, verifique se o jar do mysql está na pasta lib do WEB-INF da aplicação…
Espero poder ter ajudado.

por fora do eclipse coloca -cp nomedojarmysql.jar

[quote=rafaelscjp]Pelo que consegui ler de sua stacktrace, vc executou a classe passando o nome do arquivo.class, tente java Exemplojdbc…
Pelo Eclipse, verifique se o jar do mysql está na pasta lib do WEB-INF da aplicação…
Espero poder ter ajudado.[/quote]

Entao, eu gostaria de incluí-lo no CLASSPATH e nao ter que compiá-lo ou referenciá-lo de dentro do eclipse, uma alternativa que eu já testei e funciona (acrescetá-lo nas libraries do projeto). Gostaria que funcionasse como li por aí onde falam simplesmente pra colocar o jar na variável de ambiente $CLASSPATH.

Vou tentar a dica do nosso amigo “georgesq”, de forçar no argumento -cp, já que eu já tive problemas com a JDK também. Por exemplo, o M2E (plugin para o maven) nao detecta minha JDK se eu declaro na variável JAVA_HOME, que é setada dinamicamente quando eu subo a IDE, mas se eu jogo na linha de comando o javaw em -vm, aí funciona. Se alguém souber o por quê disso… também é bom saber.

Entao nem com o argumento cp eu consigui. A alternativa, q nao exigisse que eu acrescentasse na mao, foi declará-lo como uma depencia do projeto usando o maven. Uma alternativa até muito boa. Mas juro que nao entendo pq nem explicitando, “eclipse.exe -cp /path/to/connector.jar”, eu consegui.

Enfim, se alguém ainda tiver uma idéia, agradesço, senao, para quem tem o problema, taí uma alternativa.

Até!!

Adiciona ele como dependencia do projeto pelo eclipse mesmo.

Acho que tá em project, properties, Java Build Path.

Outra coisa, executa java ONomedaclasse apenas, nao o NOMEDACLASSE.CLASS.