将我的客户端 - 服务器应用程序的服务器端移动到亚马逊EC2实例(ubuntu 64但)后,我开始获取java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
尝试创建新的JDBC连接时。我的服务器代码是:
Class.forName("com.mysql.jdbc.Driver");
Connection connection = DriverManager.getConnection("host", "username", "password"); //crashes here
我下载了apt-get install libmysql-java
,现在服务器上的/usr/share/java/
目录如下所示:
-rw-r--r-- 1 root root 30530 Dec 9 2013 java-atk-wrapper.jar
-rw-r--r-- 1 root root 948 Mar 22 2014 java_defaults.mk
-rw-r--r-- 1 root root 2615 Apr 28 2014 libintl.jar
-rw-r--r-- 1 root root 915836 Jan 1 2014 mysql-connector-java-5.1.28.jar
lrwxrwxrwx 1 root root 31 Jan 1 2014 mysql-connector-java.jar -> mysql-connector-java-5.1.28.jar
lrwxrwxrwx 1 root root 24 Jan 1 2014 mysql.jar -> mysql-connector-java.jar
任何线索可能会出错?
答案 0 :(得分:0)
最有可能的解释是当你从一个服务器移动到另一个服务器时,有一个需要调整的类路径设置
确保/usr/share/java/mysql-connector-java.jar
位于提供错误的应用程序的类路径中