引起:java.lang.ClassNotFoundException:oracle.jdbc.OracleDriver

Dej*_*ell 5 java oracle tomcat

我在lib文件夹中创建了一个带有ojdbc14.jar的Web应用程序.

但是,当我启动我的tomcat时,我收到一个错误:

Caused by: java.lang.ClassNotFoundException: oracle.jdbc.OracleDriver
Run Code Online (Sandbox Code Playgroud)

虽然它存在于那里!

当我在Eclipse中将相同的应用程序部署到我的本地tomcat时,它工作正常.

但是,当我从Eclipse部署它时,我收到此消息,尽管jar存在!

EDITED

我也从META-INF文件夹下的context.xml中引用它:

<WatchedResource>WEB-INF/web.xml</WatchedResource>
     <Transaction factory="bitronix.tm.BitronixUserTransactionObjectFactory" />
     <Resource name="jdbc/testDS1" auth="Container" type="javax.sql.DataSource"
               maxActive="15" maxIdle="2" maxWait="10000"
               logAbandoned="true"
               username="cust" password="cust"
               driverClassName="oracle.jdbc.OracleDriver"
               url="jdbc:oracle:thin:@myserver:id:name"/>
Run Code Online (Sandbox Code Playgroud)

ada*_*shr 8

你确定它存在于webapps/yourapp/WEB-INF/lib文件夹中吗?如果在该特定目录中看不到它,则必然会抛出该异常.

你如何部署日食?您是否导出WAR文件并进行部署?验证您的WAR文件是否包含指定位置的ojdbc14.jar.

  • 您是否在父级位置有ojdbc.jar,例如$ CATALINA_HOME/lib或$ CATALINA_HOME/lib/ext?如果是这样,请尝试从其中一个位置删除jar文件.在这种情况下,它通常会导致类加载冲突. (2认同)