ClassNotFoundException:oracle.jdbc.driver.OracleDriver
Posted
技术标签:
【中文标题】ClassNotFoundException:oracle.jdbc.driver.OracleDriver【英文标题】:ClassNotFoundException: oracle.jdbc.driver.OracleDriver 【发布时间】:2013-05-06 15:21:38 【问题描述】:我写了一个 java servlet 程序,但是当我运行它时,它显示异常 java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
我的代码
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
conn = DriverManager.getConnection(url, "username", "pass");
我使用的是 Oracle 10.2.0。我还添加了 ojdbc14.jar 和 ojdbc14_g.jar。
当我向命令行发出以下命令时。我得到Error: Main method not found in class oracle.jdbc.driver.OracleDriver
【问题讨论】:
你为什么要运行java oracle.jdbc.driver.OracleDriver
?您需要查看jdbc tutorial。
我还添加了 ojdbc14.jar 和 ojdbc14_g.jar 你在哪里添加它们,你确定它们是构建路径的一部分还是在 WEB-INF/ lib 文件夹(后者在 java web 应用程序的情况下)?另外,您是如何尝试运行此代码的?
@LuiggiMendoza 我从构建路径添加。从添加外部 jar。而且WEB-INF下没有lib文件夹。我必须将 jars 添加到这些文件夹中吗?
如果是 Web 应用程序,是的。我不得不再次问:你是如何尝试运行这段代码的?
谢谢 Luiggi 将 jars 添加到 WEB-INF/lib 文件夹解决了我的问题。它是一个简单的学习网络应用程序。我正在使用 tomcat 运行
【参考方案1】:
我还添加了 ojdbc14.jar 和 ojdbc14_g.jar
向您的应用程序添加第三方库时,您必须确保它们位于应用程序的构建路径中。对于 Web 应用程序,每个第三方库都必须位于应用程序的 WEB-INF/lib 中,因此当部署到服务器(Tomcat、JBoss 等)时,它们可以被识别和加载运行您的应用程序。
【讨论】:
【参考方案2】:纠正步骤(如果从命令提示符运行) 步骤 1- 复制 ojdbc6 jar 文件 C:\oraclexe\app\oracle\product\11.2.0\server\jdbc\lib (注意 - 此路径可能因安装而异)。
第 2 步 - 将 ojdbc6 jar 文件粘贴到位置 C:\Program Files\Java\jre1.8.0_45\lib\ext (注意 - 此路径可能因安装而异)。
步骤 3- 现在运行程序 java -cp 。 .它应该成功运行,没有任何错误。
【讨论】:
以上是关于ClassNotFoundException:oracle.jdbc.driver.OracleDriver的主要内容,如果未能解决你的问题,请参考以下文章
ClassNotFoundException:org.sqlite.JDBC
ClassNotFoundException和NoClassDefFoundError
ClassNotFoundException和NoClassDefFoundError