使用带有java的sql - 编译成.jar - “ClassNotFoundException com.mysql.jdbc.Driver”

时间:2011-10-31 16:04:03

标签: java sql jar

我想尝试使用SQL和Java,所以我下载了mysql-connector-java-5.1.18-bin.jar。

我正在使用Eclipse,所以我进入了Eclipse,Project - >属性并添加了jar文件。

我还在我的类路径中添加了以下内容:

  1. C:\用户\ Shahin的\桌面\ MySQL的连接器的Java-5.1.18 \ COM \ MySQL的\ JDBC \;
  2. C:\用户\ Shahin的\桌面\ MySQL的连接器的Java-5.1.18 \ MySQL的连接器的Java-5.1.18-bin.jar;
  3. 它在Eclipse中运行良好,但是当我运行我的时候。 Jar文件我收到此错误:

    Exception in thread "main" java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
            at java.net.URLClassLoader$1.run(Unknown Source)
            at java.net.URLClassLoader$1.run(Unknown Source)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.net.URLClassLoader.findClass(Unknown Source)
            at java.lang.ClassLoader.loadClass(Unknown Source)
            at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
            at java.lang.ClassLoader.loadClass(Unknown Source)
            at java.lang.Class.forName0(Native Method)
            at java.lang.Class.forName(Unknown Source)
            at Main.main(Main.java:15)
    

2 个答案:

答案 0 :(得分:0)

这是因为当你运行你的jar时,mysql-connector-java-5.1.18-bin.jar不在你的类路径中。

.jar文件中应该有一个META-INF/MANIFEST.MF文件。您需要在该文件中为您的类路径指定一个条目,该条目指向mysql-connector-java-5.1.18-bin.jar文件所在的位置:

Class-Path: path/to/mysql-connector-java-5.1.18-bin.jar

请注意,这可能是您的jar本地的。一种常见的方法是在你的jar所在的lib子目录中包含你所依赖的其他罐子:

Class-Path: lib/mysql-connector-java-5.1.18-bin.jar

答案 1 :(得分:0)

mysql .jar的类路径很可能已关闭。你的jar是否位于mysql jar附近? (如果没有指出它)为了测试它,你可以将它们放在同一个目录中,看它是否运行。