如何在maven本地仓库中添加oracle的jdbc驱动

 更新时间:2024年11月29日 10:30:00   作者:i海边拾贝  
文章介绍了在Maven项目中添加Oracle数据库驱动ojdbc5时遇到的问题以及解决问题的两种方法,方法一为简单粗暴,但没有体现Maven仓库的作用,需要手动管理jar包,方法二为在Maven本地仓库中添加Oracle的JDBC驱动,过程较为繁琐,但配置一次后可以多次使用

maven本地仓库中添加oracle的jdbc驱动

我在使用maven添加oracle的数据库驱动ojdbc5时,遇到一个问题。

通常使用maven添加jar包,是在maven repository中搜索相关的jar包。

我在maven repository中找oracle的数据库驱动ojdbc5,

添加到pom.xml中时总是这个提示:

Missing artifact com.oracle:ojdbc5:jar:11.2.0.1.0

我在网上找了好多资料,大意都有同一个说法:oracle没有授权给maven,使用Oracle的JDBC驱动。

所以需要自己手动添加Oracle的JDBC驱动。

这时我有两种方法,使用Oracle的JDBC驱动。

方法一:最简单,适合一次使用

在maven项目下新建一个lib文件夹,在我的本地电脑下找到我的oracle数据库下的jdbc驱动

F:\app\MaoFachang\product\11.2.0\dbhome_1\jdbc\lib,在lib文件夹下找到ojdbc5.jar文件,将其复制到maven项目下的lib目录下。

在选中ojdbc5.jar右键Build Path添加到项目。

这种方法是最简单的,但没有体现maven仓库的作用。依然是我们人工手动管理jar包。

尤其是需要开发多个项目,多次使用ojdbc5.jar时,就显得太臃肿了。

方法二:在maven本地仓库中添加oracle的jdbc驱动

我在网上找了很多资料,比较分散,现在把它们总结一下,写下来,分享给大家。

1.首先,确认jdk的环境变量添加到了PATH环境中。

在我的电脑--属性--高级系统设置--高级--环境变量--用户变量下

  • 新建变量:JAVA_HOME
  • 变量值为jdk的安装目录:D:\Java\jdk1.8.0_121(这个jdk的安装目录是自己的安装jdk的目录)

在用户变量下

  • 新建变量:PATH
  • 变量值为:%JAVA_HOME%\bin;

在DOS窗口,输入命令:

java -version 查看jdk的版本,看到如下信息jdk环境变量配置成功。

Microsoft Windows [版本 6.3.9600]
(c) 2013 Microsoft Corporation。保留所有权利。

C:\Users\MaoFachang>java -version
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)

C:\Users\MaoFachang>

2.将maven的环境变量添加到了PATH环境中。

在我的电脑--属性--高级系统设置--高级--环境变量--用户变量下

  • 新建变量:MAVEN_HOME
  • 变量值为jdk的安装目录:D:\apache\apache-maven-3.3.9

  • 在用户变量下的变量:PATH
  • 添加变量值为:%MAVEN_HOME%\bin;

在DOS窗口,输入命令:

mvn -version 查看maven的版本,看到如下信息maven环境变量配置成功。

Microsoft Windows [版本 6.3.9600]
(c) 2013 Microsoft Corporation。保留所有权利。

C:\Users\MaoFachang>mvn -version
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:4
7+08:00)
Maven home: D:\apache\apache-maven-3.3.9\bin\..
Java version: 1.8.0_121, vendor: Oracle Corporation
Java home: D:\Java\jdk1.8.0_121\jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 8.1", version: "6.3", arch: "amd64", family: "dos"

C:\Users\MaoFachang>

3.找到maven文件的根目录下的config目录,修改setting.xml文件

配置maven本地仓库

  <!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ${user.home}/.m2/repository
  <localRepository>/path/to/local/repo</localRepository>
  -->

  <!--配置maven本地仓库-->
  <localRepository>D:/java/to/local/repo</localRepository>	

使用阿里云的中央仓库

  <mirrors>
    <!-- mirror
     | Specifies a repository mirror site to use instead of a given repository. The repository that
     | this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used
     | for inheritance and direct lookup purposes, and must be unique across the set of mirrors.
     |
    <mirror>
      <id>mirrorId</id>
      <mirrorOf>repositoryId</mirrorOf>
      <name>Human Readable Name for this Mirror.</name>
      <url>http://my.repository.com/repo/path</url>
    </mirror>
     -->

	 <!--使用阿里云-->
	  <mirror>
        <id>nexus-aliyun</id>
        <mirrorOf>*</mirrorOf>
        <name>Nexus aliyun</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public</url>
    </mirror> 
    

  </mirrors>

4.在oracle数据库的安装目录找到ojdbc5.jar,复制到C盘下。

F:\app\MaoFachang\product\11.2.0\dbhome_1\jdbc\lib

打开DOS窗口,执行:

mvn install:install-file -Dfile=C:/ojdbc5.jar -DgroupId=com.oracle -DartifactId=ojdbc5 -Dversion=5.0 -Dpackaging=jar -generatePom=true

详细过程如下:

Microsoft Windows [版本 6.3.9600]
(c) 2013 Microsoft Corporation。保留所有权利。

C:\Users\MaoFachang>mvn install:install-file -Dfile=C:/ojdbc5.jar -

DgroupId=com.
oracle -DartifactId=ojdbc5 -Dversion=5.0 -Dpackaging=jar -

DgeneratePom=true
[INFO] Scanning for projects...
Downloading: 

http://maven.aliyun.com/nexus/content/groups/public/org/apache/mave
n/plugins/maven-install-plugin/2.4/maven-install-plugin-2.4.pom
Downloaded: 

http://maven.aliyun.com/nexus/content/groups/public/org/apache/maven
/plugins/maven-install-plugin/2.4/maven-install-plugin-2.4.pom (7 KB 

at 16.6 KB/
sec)
[INFO]
[INFO] 

---------------------------------------------------------------------

---
[INFO] Building Maven Stub Project (No POM) 1
[INFO] 

---------------------------------------------------------------------

---
[INFO]
[INFO] --- maven-install-plugin:2.4:install-file (default-cli) @ 

standalone-pom
---
Downloading: 

http://maven.aliyun.com/nexus/content/groups/public/org/codehaus/pl
exus/plexus-utils/3.0.5/plexus-utils-3.0.5.pom
Downloaded: 

http://maven.aliyun.com/nexus/content/groups/public/org/codehaus/ple
xus/plexus-utils/3.0.5/plexus-utils-3.0.5.pom (3 KB at 13.0 KB/sec)
Downloading: 

http://maven.aliyun.com/nexus/content/groups/public/org/codehaus/pl
exus/plexus/3.1/plexus-3.1.pom
Downloaded: 

http://maven.aliyun.com/nexus/content/groups/public/org/codehaus/ple
xus/plexus/3.1/plexus-3.1.pom (19 KB at 96.7 KB/sec)
Downloading: 

http://maven.aliyun.com/nexus/content/groups/public/org/codehaus/pl
exus/plexus-digest/1.0/plexus-digest-1.0.pom
Downloaded: 

http://maven.aliyun.com/nexus/content/groups/public/org/codehaus/ple
xus/plexus-digest/1.0/plexus-digest-1.0.pom (2 KB at 6.0 KB/sec)
Downloading: 

http://maven.aliyun.com/nexus/content/groups/public/org/codehaus/pl
exus/plexus-components/1.1.7/plexus-components-1.1.7.pom
Downloaded: 

http://maven.aliyun.com/nexus/content/groups/public/org/codehaus/ple
xus/plexus-components/1.1.7/plexus-components-1.1.7.pom (5 KB at 28.4 

KB/sec)
Downloading: 

http://maven.aliyun.com/nexus/content/groups/public/org/codehaus/pl
exus/plexus/1.0.8/plexus-1.0.8.pom
Downloaded: 

http://maven.aliyun.com/nexus/content/groups/public/org/codehaus/ple
xus/plexus/1.0.8/plexus-1.0.8.pom (8 KB at 32.4 KB/sec)
Downloading: 

http://maven.aliyun.com/nexus/content/groups/public/org/codehaus/pl
exus/plexus-container-default/1.0-alpha-8/plexus-container-default-

1.0-alpha-8.p
om
Downloaded: 

http://maven.aliyun.com/nexus/content/groups/public/org/codehaus/ple
xus/plexus-container-default/1.0-alpha-8/plexus-container-default-

1.0-alpha-8.po
m (8 KB at 37.7 KB/sec)
Downloading: 

http://maven.aliyun.com/nexus/content/groups/public/classworlds/cla
ssworlds/1.1-alpha-2/classworlds-1.1-alpha-2.jar
Downloading: 

http://maven.aliyun.com/nexus/content/groups/public/org/codehaus/pl
exus/plexus-utils/3.0.5/plexus-utils-3.0.5.jar
Downloading: 

http://maven.aliyun.com/nexus/content/groups/public/org/codehaus/pl
exus/plexus-digest/1.0/plexus-digest-1.0.jar
Downloaded: 

http://maven.aliyun.com/nexus/content/groups/public/org/codehaus/ple
xus/plexus-digest/1.0/plexus-digest-1.0.jar (12 KB at 35.4 KB/sec)
Downloaded: 

http://maven.aliyun.com/nexus/content/groups/public/classworlds/clas
sworlds/1.1-alpha-2/classworlds-1.1-alpha-2.jar (37 KB at 99.8 

KB/sec)
Downloaded: 

http://maven.aliyun.com/nexus/content/groups/public/org/codehaus/ple
xus/plexus-utils/3.0.5/plexus-utils-3.0.5.jar (226 KB at 250.6 

KB/sec)
[INFO] Installing C:\ojdbc5.jar to D:\java\to\local\repo\com\oracle

\ojdbc5\5.0\o
jdbc5-5.0.jar
[INFO] Installing C:\Users\MAOFAC~1\AppData\Local\Temp

\mvninstall442207812437734
0769.pom to D:\java\to\local\repo\com\oracle\ojdbc5\5.0\ojdbc5-

5.0.pom
[INFO] 

---------------------------------------------------------------------

---
[INFO] BUILD SUCCESS
[INFO] 

---------------------------------------------------------------------

---
[INFO] Total time: 5.374 s
[INFO] Finished at: 2017-03-13T21:10:29+08:00
[INFO] Final Memory: 10M/115M
[INFO] 

---------------------------------------------------------------------

---

C:\Users\MaoFachang>

显示build success即安装成功

-Dfile=c:/ojdbc5.jar 是指你ojdbc5.jar的文件位置

  • -DgroupId=com.oracle
  • -DartifactId=ojdbc5
  • -Dversion=5.0

指明了ojdbc5.jar的maven仓库位置。

5.做了这么多,现在可以到maven项目的本地仓库中使用ojdbc5.jar了

		<dependency>
			<groupId>com.oracle</groupId>
			<artifactId>ojdbc5</artifactId>
			<version>5.0</version>
		</dependency>

效果图如下:

在我的本地仓库中查看添加的ojdbc5.jar

这种办法过程比较麻烦,但一次配好,使用多次。用maven管理也方便。(推荐使用这种办法!!!)

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Java 中的 switch 语句:类型支持与限制详解

    Java 中的 switch 语句:类型支持与限制详解

    Java 中的 switch 语句是一种强大的多分支选择结构,它支持多种数据类型,包括基本数据类型、字符串和枚举类型,本文给大家介绍Java 中的 switch 语句:类型支持与限制,感兴趣的朋友一起看看吧
    2024-08-08
  • Java过滤所有特殊字符的案例

    Java过滤所有特殊字符的案例

    这篇文章主要介绍了Java过滤所有特殊字符的相关资料,包括java中清理所有特殊字符及java正则过滤特殊字符的方法,感兴趣的朋友跟随小编一起看看吧
    2024-02-02
  • 彻底解决Spring mvc中时间的转换和序列化等问题

    彻底解决Spring mvc中时间的转换和序列化等问题

    这篇文章主要介绍了彻底解决Spring mvc中时间的转换和序列化等问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • Spring关于@Configuration配置处理流程

    Spring关于@Configuration配置处理流程

    这篇文章主要介绍了Spring关于@Configuration配置处理流程,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-06-06
  • 使用Spring Boot+MyBatis框架做查询操作的示例代码

    使用Spring Boot+MyBatis框架做查询操作的示例代码

    这篇文章主要介绍了使用Spring Boot+MyBatis框架做查询操作的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-10-10
  • MyBatis利用MyCat实现多租户的简单思路分享

    MyBatis利用MyCat实现多租户的简单思路分享

    这篇文章主要给大家介绍了关于MyBatis利用MyCat实现多租户的简单思路的相关资料,文中的多租户是基于多数据库进行实现的,数据是通过不同数据库进行隔离,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-06-06
  • 基于Pinpoint对SpringCloud微服务项目实现全链路监控的问题

    基于Pinpoint对SpringCloud微服务项目实现全链路监控的问题

    这篇文章主要介绍了基于Pinpoint对SpringCloud微服务项目实现全链路监控的问题,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-02-02
  • idea本地merge如何合并代码

    idea本地merge如何合并代码

    这篇文章主要介绍了idea本地merge如何合并代码问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • Java中反射的学习笔记分享

    Java中反射的学习笔记分享

    反射是Java编程语言中的一个特性。它允许执行的Java程序检查或 操作 自身,并操作程序的内部属性。本文将通过几个示例带大家详细了解一下Java中反射的使用,需要的可以参考一下
    2022-11-11
  • Spring整合Mybatis的全过程

    Spring整合Mybatis的全过程

    这篇文章主要介绍了Spring整合Mybatis的全过程,包括spring配置文件书写映射器接口的实例代码,本文给大家介绍的非常详细,需要的朋友可以参考下
    2021-06-06

最新评论