GVKun编程网logo

java.lang.ClassNotFoundException:com.mysql.jdbc.Driver

8

以上就是给各位分享java.lang.ClassNotFoundException:com.mysql.jdbc.Driver,同时本文还将给你拓展Causedby:java.lang.ClassNo

以上就是给各位分享java.lang.ClassNotFoundException:com.mysql.jdbc.Driver,同时本文还将给你拓展Caused by: java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver、ClassNotFoundException: com.mysql.jdbc.Driver、ClassNotFoundException:com.microsoft.sqlserver.jdbc、ClassNotFoundException:com.mysql.jdbc.Driver等相关知识,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java.lang.ClassNotFoundException:com.mysql.jdbc.Driver

java.lang.ClassNotFoundException:com.mysql.jdbc.Driver

编译Java程序时出现此错误

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

然后我知道应该将的路径添加mysql-connector-java-3.1.14-bin.jar到java
classpath中。我使用的是Windows XP,我在controlpanel / system / enviromental变量中编辑了类路径

类路径是: .;C:\j2sdk1.4.2_16\jre\lib;

所以现在变成: .;C:\j2sdk1.4.2_16\jre\lib;C:\Program Files\mysql-connector- java-3.1.144

但是,此外,当我在cmd中键入set classpath时(只是检查当前的classpath是什么),我仍然遇到相同的错误:

CLASSPATH= .;C:\j2sdk1.4.2_16\jre\lib;

谁能帮我解决这个问题?

Caused by: java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver

Caused by: java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver

" java.lang.ExceptionInInitializerError
    at com.test.App$$anonfun$main$3.apply(App.scala:117)
    at com.test.App$$anonfun$main$3.apply(App.scala:115)
    at org.apache.spark.streaming.dstream.DStream$$anonfun$foreachRDD$1$$anonfun$apply$mcV$sp$3.apply(DStream.scala:627)
    at org.apache.spark.streaming.dstream.DStream$$anonfun$foreachRDD$1$$anonfun$apply$mcV$sp$3.apply(DStream.scala:627)
    at org.apache.spark.streaming.dstream.ForEachDStream$$anonfun$1$$anonfun$apply$mcV$sp$1.apply$mcV$sp(ForEachDStream.scala:51)
    at org.apache.spark.streaming.dstream.ForEachDStream$$anonfun$1$$anonfun$apply$mcV$sp$1.apply(ForEachDStream.scala:51)
    at org.apache.spark.streaming.dstream.ForEachDStream$$anonfun$1$$anonfun$apply$mcV$sp$1.apply(ForEachDStream.scala:51)
    at org.apache.spark.streaming.dstream.DStream.createRDDWithLocalProperties(DStream.scala:415)
    at org.apache.spark.streaming.dstream.ForEachDStream$$anonfun$1.apply$mcV$sp(ForEachDStream.scala:50)
    at org.apache.spark.streaming.dstream.ForEachDStream$$anonfun$1.apply(ForEachDStream.scala:50)
    at org.apache.spark.streaming.dstream.ForEachDStream$$anonfun$1.apply(ForEachDStream.scala:50)
    at scala.util.Try$.apply(Try.scala:192)
    at org.apache.spark.streaming.scheduler.Job.run(Job.scala:39)
    at org.apache.spark.streaming.scheduler.JobScheduler$JobHandler$$anonfun$run$1.apply$mcV$sp(JobScheduler.scala:254)
    at org.apache.spark.streaming.scheduler.JobScheduler$JobHandler$$anonfun$run$1.apply(JobScheduler.scala:254)
    at org.apache.spark.streaming.scheduler.JobScheduler$JobHandler$$anonfun$run$1.apply(JobScheduler.scala:254)
    at scala.util.DynamicVariable.withValue(DynamicVariable.scala:58)
    at org.apache.spark.streaming.scheduler.JobScheduler$JobHandler.run(JobScheduler.scala:253)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:264)
    at com.test.streamingToDb$.<init>(streamingToDb.scala:39)
    at com.test.streamingToDb$.<clinit>(streamingToDb.scala)
    ... 21 more
 

ClassNotFoundException: com.mysql.jdbc.Driver

ClassNotFoundException: com.mysql.jdbc.Driver

beans.xml 配置文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:aop="http://www.springframework.org/schema/aop" 
    xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context.xsd
        http://www.springframework.org/schema/aop   
   	http://www.springframework.org/schema/aop/spring-aop.xsd">
        
        <context:property-placeholder location="classpath:jdbc.properties" /> 
     
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> 
    <property name="driverClassName" value="${jdbc.driverClassName}"/> 
    <property name="url" value="${jdbc.url}"/> 
    <property name="username" value="${jdbc.username}"/> 
    <property name="password" value="${jdbc.password}"/>
  </bean> 
<bean id="userDao" class="dao.impl.UserDaoImpl">
<property name="dataSource" ref="dataSource"></property>
</bean>

<bean id="userInterceptor" class="aop.UserInterceptor"></bean>
<bean id="userService" class="service.UserService">
<property name="userDao" ref="userDao"></property>
</bean>



</beans>

src 下新建 jdbc.properties 内容如下:

jdbc.driverClassName=com.mysql.jdbc.Driver 
jdbc.url=jdbc:mysql://localhost:3306/spring 
jdbc.username=root 
jdbc.password=****

运行时报 ClassNotFoundException: com.mysql.jdbc.Driver 异常,mysql 的驱动包明明是加进去的。更关键的一点是不使用占位符,即如下:

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> 
    <property name="driverClassName" value="com.mysql.jdbc.Driver"/> 
	     <property name="url" value="jdbc:mysql://localhost:3306/spring"/> 
	     <property name="username" value="root"/> 
	     <property name="password" value="19870509"/> 
  </bean>

这样运行是正常的。后来发现异常 信息里有这么一句话

at org.apache.commons.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1420)

我在想有可能是

commons.dbcp.BasicDataSource

这个类无法加载 mysql 驱动的问题。经过好长时间的查找,发现改成

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">

即正常。至此,大功告成!

ClassNotFoundException:com.microsoft.sqlserver.jdbc

ClassNotFoundException:com.microsoft.sqlserver.jdbc

当我在Eclipse IDE下运行Web应用程序时,一切正常。但是,当我将项目导出到war文件中并部署到tomcat中时,我得到以下消息:

java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc

我尝试将sqljdbc4.jar放到任何地方:

  • catalina-home \ lib目录
  • WEB-INF \ lib目录
  • 他们都

我想念什么?环境:tomcat 6.0.20,SQL Server 2005

答案1

小编典典

您的驱动程序类 名称 错误。异常文本指向软件包,而不是实际的驱动程序类。并且不要忘记在更改各种lib目录的内容后重新启动Tomcat。

编辑: 您的IDE使用的配置可能与部署的战争不同。或无提示地失败并出现相同的异常,但驱动程序本身已通过其他方式加载-实际的连接才起作用。

ClassNotFoundException:com.mysql.jdbc.Driver

ClassNotFoundException:com.mysql.jdbc.Driver

这个问题已经在这里问了很多,但我仍然无法解决我的问题:我把mysql-connector-java-5.1.18-binC:\ProgramFiles\Java\jre6\lib\ext文件夹中。我有这个代码:

    // 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.Driverat 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)

我也将CLASSPATH变量更改为C:\Program Files\Java\jre6\lib\ext\mysql-connector-java-5.1.18-bin 任何想法?

答案1

小编典典

您下载的zip文件应包含一个名为mysql-connector-java-5.0.8-bin.jar或类似文件。版本可能有所不同。检查它是否存在,并检查它是否直接在您的类路径中(而不在子目录等中)。

如果还可以,请检查您的classpath变量是否未被其他内容覆盖。如果您手动执行程序,请执行以下操作:java -cp "C:\ProgramFiles\Java\jre6\lib\ext\mysql-connector-java-5.0.8-bin.jar:." YourClass

如果您使用的是诸如eclipse之类的IDE,请在此处检查您的构建路径设置。(在Eclipse中,您将右键单击项目->属性->
Java构建路径->添加外部JAR,然后提供连接器的路径… jar。

关于java.lang.ClassNotFoundException:com.mysql.jdbc.Driver的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于Caused by: java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver、ClassNotFoundException: com.mysql.jdbc.Driver、ClassNotFoundException:com.microsoft.sqlserver.jdbc、ClassNotFoundException:com.mysql.jdbc.Driver等相关内容,可以在本站寻找。

本文标签: