我正在尝试使用MySQL的MySQL驱动程序,并且我不断收到ClassNotFoundException。我根本不使用IDE,程序是用Vim编写的,并在Window的命令行编译。这是一堂课,教授告诉我们,我们根本不能使用IDE。我将JAR文件添加到Window的PATH系统环境变量中,但我仍然收到错误。我一定做错了,但我做过的大部分研究都表明你需要将驱动程序添加到IDE的类路径中,但我不是在使用IDE,而是使用Windows。
这是我的代码:
try {
Class.forName("com.mysql.jdbc.Driver");
}
catch (ClassNotFoundException e) {
System.out.println("Where is your MySQL JDBC Driver?");
e.printStackTrace();
return;
}
错误:
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 sqlAccess.<init>(sqlAccess.java:21)
at Tester.DoOther(Tester.java:44)
等
这就是我在系统变量下添加到PATH
变量的内容:
C:\Program Files\Java\jdk1.7.0_11\bin\mysql-connector-java-5.1.24-bin.jar
我错过了什么?
答案 0 :(得分:5)
您必须将jar的路径添加到CLASSPATH,而不是PATH
set "CLASSPATH=.;F:\Software Tech II\FinalProject\lib\mysql-connector-java-5.1.24-bin.jar"
java -cp %CLASSPATH% Tester
答案 1 :(得分:2)
创建一个lib目录,将所有jar放在那里(特别是jdbc连接器http://dev.mysql.com/downloads/connector/j/)
然后将其添加到您的类路径:http://www.ibm.com/developerworks/library/j-classpath-windows/ 祝你好运
答案 2 :(得分:0)
将mysql-connector-java-5.1.24-bin.jar文件添加到C:\ Program Files \ Java \ jdk1.7.0_11 \ jre \ lib \ ext并重新启动。
答案 3 :(得分:0)
好的,这最终对我有用。感谢这个帖子
java programs not running due to seting classpath
我不知道classpath最好通过命令行中的-cp开关设置,因此运行命令
java -cp .;"F:\Software Tech II\FinalProject\lib\mysql-connector-java-5.1.24-bin.jar" Tester
停止了我的错误。谢谢你们。