我遇到ucp.jar
如果我使用ucp.jar
用于oracle 12.1.0.1,它可以正常工作。
如果我使用的是oracle 12.1.0.2的版本,那么我会得到以下异常:
java.lang.ClassNotFoundException: oracle.jdbc.pooling.Factory
有没有人可以帮助我?
谢谢,Mauro
答案 0 :(得分:2)
Jdbc(ojdbc7.jar)和UCP(ucp.jar)jar必须始终来自同一版本(12.1.0.2)。如果不升级另一个,则无法升级。此版本依赖性在12c中引入。事情并非如此。
答案 1 :(得分:0)
有一个ojdbc7.jar / ojdbc6.jar文件依赖项。您需要下载/更新,具体取决于您使用的Java版本。
答案 2 :(得分:0)
添加以下maven依赖项解决了我的问题
<dependency>
<groupId>com.oracle.jdbc</groupId>
<artifactId>ojdbc7</artifactId>
<version>12.1.0.2</version>
</dependency>
<dependency>
<groupId>com.oracle.jdbc</groupId>
<artifactId>ucp</artifactId>
<version>12.1.0.2</version>
</dependency>
答案 3 :(得分:0)
(1)注册(或拥有现有的Oracle.com帐户)
(2)转到http://www.oracle.com/technetwork/database/features/jdbc/jdbc-ucp-122-3110062.html
下载ojdbc8.jar
和udp.jar
添加到classpath。
(3)如果您使用构建工具(Maven或Gralde),请转到文件目录ojdbc8.jar
和upd.jar
mvn install:install-file -Dfile=udp.jar -DgroupId=com.oracle -DartifactId=udp -Dversion=12.1.0.1 -Dpackaging=jar
mvn install:install-file -Dfile=ojdbc8.jar -DgroupId=com.oracle -DartifactId=ojdbc8 -Dversion=12.1.0.1 -Dpackaging=jar
(4)如果您使用Gradle,则必须在build.gradle
中声明使用MavenLocal。实施例
plugins {
id 'java'
}
group 'com.donhuvy'
version '1.0-SNAPSHOT'
sourceCompatibility = 10
repositories {
mavenLocal()
mavenCentral()
}
dependencies {
compile('com.oracle:ojdbc8:12.1.0.1')
compile('com.oracle:ucp:12.1.0.1')
testCompile group: 'junit', name: 'junit', version: '4.12'
}