2014-01-10 3 views
0

Я получаю java.lang.ClassnotFoundException во время работы этой программы:java.lang.ClassNotFoundException com.mysql.jdbc.Driver

import java.lang.*; 
import java.sql.*; 
import java.io.*; 
import java.util.*; 

class MysqlCon{ 
    public static void main(String args[]){ 
     try{ 
      Class.forName("com.mysql.jdbc.Driver"); 

      Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/sonoo","root","root"); 
      //here sonoo is the database name, root is the username and root is the password 
      Statement stmt=con.createStatement(); 

      ResultSet rs=stmt.executeQuery("select * from emp"); 

      while(rs.next()) 
       System.out.println(rs.getInt(1)+" "+rs.getString(2)+" "+rs.getString(3)); 

      con.close(); 

     }catch(Exception e){ System.out.println(e);} 

    } 
} 

SQl Код:

create database sonoo; 
use sonoo; 
create table emp(id int(10),name varchar(40),age int(3)); 

Я также установить путь к классам C: \ Program Files \ Java \ jre7 \ lib \ ext \ mysql-5.0.7.jar, а затем он дает такую ​​же ошибку.

Я думаю, что код в порядке, и что-то не так с файлом mysql.jar. Также я загрузил этот файл jar со следующего веб-сайта: http://www.java2s.com/Code/Jar/m/Downloadmysql507jar.html, и я использую сервер Mysql 5.6.

+0

Как вы это используете? Что вы подразумеваете под «set classpath»? – SergeyB

+0

Почему вы не используете официальный JDBC-драйвер для Mysql? http://dev.mysql.com/downloads/connector/j/ – Peter

+0

И: Поскольку это системная библиотека, которую вы часто используете много, почему бы вам просто не добавить ее в свою конфигурацию IDE? Вам даже не придется слишком беспокоиться о classpaths, потому что ваша среда IDE автоматически настроит путь сборки. – Peter

ответ

1

1) Попробуйте окружить это в круглых скобках, это может помочь.
"C: \ Program Files \ Java \ jre7 \ Lib \ вн \ MySQL-5.0.7.jar"

2) Кроме того, откройте файл JAR (с некоторой программой, способной
открывать ZIP-файлы) и убедитесь, что класс находится в
там (под правой структурой пакета/каталога).

Ошибка, безусловно, означает, что класс не находится на
путь к классу во время выполнения, даже если вы так считаете.

Смежные вопросы