我对oracle jdbc有点困惑。
我使用ojdbc16
通过以下步骤得到:
1)将ojdbc.jar添加到我的构建路径中 - >一切都在本地工作(连接,请求等..)
2)尝试用jetty测试我的webApp
sealing violation: package oracle.jdbc is sealed
我没看到驱动程序可以从ojdbc.jar加载appart:/也许它来自Nexus的复制/粘贴?所以我从pom.xml中删除了依赖项“ojdbc”。
3)尝试用jetty测试我的webApp。它现在正在工作(呵呵) 如果我做eclipse:eclipse(更新我的类路径)这不再适用了。
4)当我运行我的Junit测试时,它失败了,因为oracle驱动程序似乎不可用。
我很困惑,第3步怎么办?步骤4如何在第3步工作时不起作用?以及如何用ojdbc修复我的问题? 谢谢,
答案 0 :(得分:0)
总结:如果您在编译时找到该类但在运行时没有找到该类,这可能有所帮助:尝试将您使用的ojdbcXX.jar文件复制到java文件夹结构...
详细说明:
我已经和它搏斗了两天 - 并且阅读了大量的stackoverflow答案,许多帮助我理解了相关的事情:-)。刚才我遇到了一个对我有用的解决方案。
我正在使用:Windows 7 64位; Eclipse Kepler; Oracle 12.1; JDK1.7; ojdbc7.jar。我的类路径包含ojdbc7.jar的文件夹。我在代码中的导入很好,代码本身在编译时找到了类。我的Eclipse项目中的库设置还包含带有ojdbc7.jar文件的文件夹。我的Java构建路径|订单和导出选项卡已打勾,包括ojdbc7.jar(感谢StackOverflow)。
最后一个缺失的部分:我需要将ojdbc7.jar文件从oracle文件夹结构复制到Java文件夹结构,因此它可以在运行时找到它。
在我的系统上......
发件人:C:\ app \ PCNonAdmin \ product \ 12.1.0 \ dbhome_1 \ jdbc \ lib \ ojdbc7.jar
收件人:C:\ Program Files \ Java \ jdk1.7.0_05 \ jre \ lib \ ext \ ojdbc7.jar
我希望这会有所帮助。