2012-01-05 13 views
1

この質問は、ここで多くのことを尋ねてきたが、私はまだ私の問題を解決することはできません。 私はC:\Program Files\Java\jre6\lib\extフォルダにmysql-connector-java-5.1.18-binを置きます。 私はこのコードを持っている:にClassNotFoundException:はcom.mysql.jdbc.Driver

// Load the database driver 
    Class.forName("com.mysql.jdbc.Driver"); 
    // Get a connection to the database 
    Connection conn = DriverManager.getConnection(
         "jdbc:mysql://localhost:3306/mysql", "root", "4958ps"); 
    // Get a statement from the connection 
    Statement stmt = conn.createStatement() ; 
    // Execute the query 
    ResultSet rs = stmt.executeQuery("SELECT * FROM Cust") ; 
    // Loop through the result set 
    while(rs.next()) 
     System.out.println(rs.getString(1)) ; 
    // Close the result set, statement and the connection 
    rs.close() ; 
    stmt.close() ; 
    conn.close() ; 
} catch(SQLException se) { 
    System.out.println("SQL Exception:") ; 
    // Loop through the SQL Exceptions 
    while(se != null) { 
     System.out.println("State : " + se.getSQLState() ) ; 
     System.out.println("Message: " + se.getMessage() ) ; 
     System.out.println("Error : " + se.getErrorCode()) ; 
     se = se.getNextException() ; 
    }   
} catch(Exception e) { 
    e.printStackTrace(); 
} 

と私は次のスタックトレースを持つClassNotFoundExceptionが取得:

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 
at java.net.URLClassLoader$1.run(URLClassLoader.java:202) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.net.URLClassLoader.findClass(URLClassLoader.java:190) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:306) 
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:247) 
at java.lang.Class.forName0(Native Method) 
at java.lang.Class.forName(Class.java:169) 
at pack.Test.main(Test.java:14) 

を私はまた、C:\Program Files\Java\jre6\lib\ext\mysql-connector-java-5.1.18-bin 任意のアイデアであることをCLASSPATH変数を変更?

+0

Eclipseを使用していますか?バッチスクリプトやシェルスクリプトを書いていますか? – iowatiger08

+0

@ iowatiger08:NetBeansを使用しています – nikos

+1

mysql-connector jarファイルはどこに置いてありますか?クラスパスにはありますか? – mcfinnigan

答えて

3

ダウンロードしたジップには、mysql-connector-java-5.0.8-bin.jarなどのファイルが含まれている必要があります。バージョンは異なる場合があります。存在していることを確認し、クラスパスに直接存在することを確認します(サブディレクトリなどにはありません)。

これが問題なければ、クラスパス変数が他のものによって上書きされていないことを確認してください。プログラムを手動で実行する場合は、次のようにします。java -cp "C:\Program Files\Java\jre6\lib\ext\mysql-connector-java-5.0.8-bin.jar:." YourClass

EclipseなどのIDEを使用している場合は、ビルドパスの設定を確認してください。 (Eclipseで右クリックしてプロジェクト - >プロパティ - > Javaビルドパス - >外部JARを追加してからコネクタのパスを入力してください)

0

batファイルは

@echo off 
set CLASSPATH=program.jar;mysql-connector-java-5.1.18-bin.jar 

:start 

start javaw.exe MainClass 

program.jarようになります(メインクラスとしてMainClassクラスが含まれます)とmysql.jarは同じディレクトリに存在する必要があります。

Eclipseの場合、mysql ... jarを含むプロジェクトのビルドパスを設定する必要があります。

+1

NetBeansで、[プロジェクト]プロパティを開き、[ライブラリ]を選択します。 [プロジェクトを追加]、[ライブラリを追加]、[Add JAR ...]の順に選択すると、jarを追加し、jarファイルを参照してプロジェクトビルドに追加できます。http://netbeans.org/kb/docs/java/ project-setup.html#projects-classpath – iowatiger08

1

CLASSPATH変数は単にディレクトリにすることはできません。

+0

はい私は既にそれをしていました。私の質問には完全な名前を提供することを忘れました。ごめんなさい – nikos

+1

また、Windows上のJavaはパス内のスペースを酷使しています。 –

2

mysql-connector-java-5.1.18-binファイルを置くのが問題だと思います。「mysql-connector-java-5.0.5.jar」と入力する必要があります。 (IDE)でWebアプリケーションを作ったので、eclipse(IDE)でWebアプリケーションを作成している場合は、 "mysql-connector-java-5.0.5.jar" libフォルダにあります。 以下は私の "mysql-connector -java-5.0.5.jar」ファイル...

C:\ユーザーは\アビシェーク\ワークスペース\ MyProjectとは、WebContentをの\ WEB-INF \ \ libに\ mysqlのコネクタ-のjava-5.0.5.jar

0
私は、MySQL-コネクタのjava-5.1.18-bin.jarをダウンロードMySQLの :

は、私は同じ問題が発生したため、私はそれを解決するために何をしたか:

  1. 使用のサーバーに応じての.jarをダウンロード

  2. システム変数にCLASSPATHを全体名で追加しました。使用される.jarのすでにCLASSPATHのvarがある場合は、PATH "; Jar/jarファイル名へのパス"のように追加します。 CLASSPATH = d:\ requisites \ mySQL_connector \ mysql-connector-java-5.1.18-bin.jar

  3. Eclipseプロジェクトの場合: プロジェクト - >ビルドパス - を右クリックします。ビルドパスを設定します。外部JARを追加し、jarファイルを追加します。この手順を正常に実行すると、「参照ライブラリ」のプロジェクトに表示されます

  4. 重要なステップ(私が使っているAndroid Development Toolsフレームワークを使用している場合)は、そのJARファイルをあなたのlibsフォルダに追加することですアプリ。私は私のパス(d:\ requisites \ mySQL_connector)から私のプロジェクトのlibsフォルダにjarをコピー・ペーストすることでこれを行いました。

プロジェクトを再起動して2回目の実行に取り掛かりました。

関連する問題