此代码:
Class.forName("com.mysql.jdbc.Driver");
导致
ClassNotFoundException的
关于覆盆子Pi。虽然我的Classpath是正确的
pi@raspberrypi ~ $ echo $CLASSPATH
/usr/share/java/mysql-connector-java.jar
在Windows上它运行正常! 我知道我做错了什么?
我还尝试用
启动我的应用程序java -cp /usr/share/java/mysql-connector-java.jar -jar myApp.jar
感谢 弗洛里安
答案 0 :(得分:4)
您正在使用-jar
,这使得-cp
部分无关紧要。来自documentation:
使用-jar选项时,指定的JAR文件是所有用户类的源,并忽略其他类路径设置。
add ClassPath entries in your jar manifest,或将MySQL连接器jar文件添加到扩展目录(例如jre/lib/ext
)。使用清单是最干净的方法。
答案 1 :(得分:0)
只需复制MySql-Connector.jar
中的apache tomcat's lib folder
,然后remove the jar
中的project's lib folder
,然后运行该项目。
你在lib中做了什么,jre/lib or jre/lib/ext?
是jar mysql-connector-java-5.1.5-bin.jar
还是其他东西(比如目录)?
顺便说一句,我不会把它放在lib中,jre/lib or jre/lib/ext
,还有其他方法可以将jar添加到类路径中。您可以通过明确添加CLASSPATH
环境变量来实现。或者您可以使用java的-cp
选项。