`

Maven 找不到oracle jdbc 驱动,谁之过?

阅读更多

Maven 找不到oracle jdbc  驱动,谁之过?

发表于 2010-03-17

整理于 2012-04-03

整理自source: http://stackoverflow.com/questions/1074869/find-jdbc-driver-in-maven-repository

 

问: 我想把oracle的jdbc驱动加入到我的项目中(运行时),比如ojdbc14。

我的POM文件如下,

 


<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc14</artifactId>
<version>10.2.0.3.0</version>
</dependency>

 

不过这显然是无效的,因为 oracle 的jdbc driver不在Maven的central repository中。

我的两个问题是:

1) 我如何找到一个包含此 artifact 的repository?

2)  我如何添加,maven才能使用?

 

答:

1), 不幸的是由于二进制许可 binary license的限制, 没有任何一个公共的repository可以包含oracle 的jdbc driver。我们的很多依赖都面对同样的问题,这不是Maven的错。即使你偶然发现了某个公共的repository可以包含这个JAR,那么那一定是违法的。

 

2),由于二进制许可 binary license的限制,一些 JAR不能加入到 Maven Central repo 中,比如:

Oracle JDBC driver classes for use with JDK1.4的POM 如下:

 

http://repo2.maven.org/maven2/com/oracle/ojdbc14/10.2.0.3.0/ojdbc14-10.2.0.3.0.pom

 

 

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.oracle</groupId>
<artifactId>ojdbc14</artifactId>
<version>10.2.0.3.0</version>
<name>Oracle JDBC Driver</name>
<description>Oracle JDBC driver classes for use with JDK1.4</description>
<url>
http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/index.html
</url>
<licenses>
<license>
<name>
Oracle Technology Network Development and Distribution License Terms
</name>
<url>
http://www.oracle.com/technology/software/htdocs/distlic.html
</url>
</license>
</licenses>
<organization>
<name>Oracle Corporation</name>
<url>http://www.oracle.com</url>
</organization>
</project>
 

 

因此, 下载这个POM, 打开它, 你就可以找到下载 JAR的URL。下载之后, 你就可以用下面的maven命令添加到你本地的repository 中。也许你需要修改ojdbc.jar 路径。

 

mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc14 \
     -Dversion=10.2.0.3.0 -Dpackaging=jar -Dfile=ojdbc.jar

 

 

 如果你的开发团队有自己的私服, 可参照这个指南( this guide http://maven.apache.org/guides/mini/guide-central-repository-upload.html)上传JAR。

 

 

主要原文见下:

Q:

I want to add the oracle jdbc driver to my project as dependency (runtime scope) - ojdbc14. In MVN repository site the dependency to put in the POM is:


<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc14</artifactId>
<version>10.2.0.3.0</version>
</dependency>

of course this does't work as it is not in the central repository used by maven. 2 questions:

1) How do I find a repository (if any) that contains this artifact?

2) How do I add it so that Maven will use it?

Thanks!

 

A:

1) How do I find a repository (if any) that contains this artifact?

Unfortunately due the binary license there is no public repository with the Oracle Driver JAR. This happens with many dependencies but is not Maven's fault. If you happen to find a public repository containing the JAR you can be sure that is illegal.

2) How do I add it so that Maven will use it?

Some JARs that can't be added due to license reasons have a pom entry in the Maven Central repo . Just check it out, it contains the URL to download the file which in this case is http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/index.html . Once you've downloaded the JAR just add it to your computer repository with:

mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc14 \
     -Dversion=10.2.0.3.0 -Dpackaging=jar -Dfile=ojdbc.jar

If your team has a local Maven repository this guide might be helpful to upload the JAR there

分享到:
评论

相关推荐

    解决maven仓库没有oracle jdbc驱动的问题

    刚还以为是网络问题,重新下载了很多次,都提示maven库里找不到相关jar文件。网上一查,原来是这个驱动包是需要Oracle官方授权才能被我们下载。没办法,只能找来一个ojdbc14的10.2.0.1.0包,通过下面的命令,让maven...

    eclipse下maven安装oracle的jdbc驱动

    eclipse中maven 下载不到oracle数据库驱动 ojdbc5 ojdbc6 需要我们手动将驱动安装到本地仓库 1.找到安装命令的位置在项目的目录下 mvnw就是我们要用到的安装工具 2.下载 驱动 3.安装驱动 把需要安装的驱动放到第一步...

    Java之——在Maven仓库中添加Oracle JDBC驱动

    由于Oracle授权问题,Maven3不提供Oracle JDBC driver,为了在Maven项目中应用Oracle JDBC driver,必须手动添加到本地仓库。 一.下载Oracle JDBC Driver 1.通过Oracle官方网站下载相应版本:...

    oraclejdbc驱动

    eclipse中maven 下载不到oracle数据库驱动 ojdbc5 ojdbc6 需要我们手动将驱动安装到本地仓库 https://blog.csdn.net/az44yao/article/details/87773714 参考地址: ...

    Oracle驱动包,ojdbc14_g

    maven的可以打到本地仓库 命令:mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc14 -Dversion=10.2.0.5.0 -Dpackaging=jar -Dfile=D:\util\ojdbc14_g.jar 引用方式: &lt;!-- 添加oracle jdbc ...

    kingbase8.Driver

    Java版本 人大金仓ESV8最新版驱动程序,学习使用国产化数据库操作。 金仓通用数据库,可视化操作,毫秒级数据处理,高效准确完成数据处理全过程。面向事务处理类、兼顾分析类应用领域场景,兼容Oracle、国产数据库等多...

    Missing artifact com.oracle:ojdbc6:jar:11.2.0.1.0问题解决 ojdbc包pom.xml出错

    2.将ojdbc6.jar包添加到maven,也就是运行下面的语句,注意:不是在C盘下运行,是在该目录下执行下面的语句,如果你不知道你的版本号,可以执行select * from v$version;进行查看 mvn install:install-file -...

    oracle-vpd:启用Oracle VPD的翻译器

    由于Oracle JDBC驱动程序在任何公共Maven存储库中均不可用,因此您需要在本地存储库中创建一个。 您本地的Maven存储库通常位于“〜/ .m2 /存储库”目录中。 将“ maven-repo”目录复制到其中 将“ ojdbc6.jar”复制...

    galileo:地理参考推文

    也可以使用本地maven安装的文本编辑器Android JSON 和 Oracle jdbc 驱动程序依赖项在本地安装。 您可以在 alt 文件夹中找到该 jar。 我强烈建议您从提供商 Oracle 下载ojdbc 。Apache Tomcat 带有 tomcat 插件的 ...

    helidon-labs:Helidon云测试驱动器实验室的起点

    此代码是使用以下代码构建的,尽管以后的版本可能会起作用,但我尚未对其进行测试Maven的3.6 Java 11.0.5 2019-10-15 LTS Eclipse 2020-06-4.16.0 卷曲7.64.1 Oracle JDBC驱动程序(已安装在您的Maven仓库中)v10...

    p2p_Fin:仿信和金融的p2p金融项目

    资源文件配置如下:注意:oracle的连接驱动是私有的,在maven仓库中不存在,需要手动添加。 jdbc.driver.OracleDriver jdbc.user = p2p_FIN jdbc.password = 123 #redis redis.server =本地主机redis.port = 6379...

    nexus-3.14.0-04-win64

    hosted 宿主仓库:主要用于部署无法从公共仓库获取的构件(如 oracle 的 JDBC 驱动)以及自己或第三方的项目构件; proxy 代理仓库:代理公共的远程仓库; virtual 虚拟仓库:用于适配 Maven 1; group 仓库组:...

Global site tag (gtag.js) - Google Analytics