zoukankan      html  css  js  c++  java
  • oracle的jdbc 的maven配置

      oracle的jdbc是需要收费,因此在maven的中心库是无法下载。有两个办法引入到工程中,一个是手工,另外一个是加入oracle自己的maven库

    一、手工配置(本地依赖)

      首先要下载到想要的版本对应的jar包。比如10.2.0.3对应ojdbc14.jar,12.2.0.1对应ojdbc8.jar。至于如何下,各展神通吧。

      其次,运行命令,指定jar包和版本(其中{}内是版本和文件位置),跑完后就会在用户home目录下的.m2/repository/com/oracle下发现安装后的maven依赖:

    mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc14 -Dversion={12.2.0.1} -Dpackaging=jar -Dfile={ojdbc8.jar}
    

       有个问题就是我的电脑里面没有单独安装maven,使用的是idea的内置maven,因此需要到idea的安装目录去找mvn执行文件。

    二、配置oracle的maven库(在线依赖)

      这个配置有些复杂,主要是配置pom.xml里面的3个内容:jdbc依赖、oracle的repositories、pluginRepositories:

     1 <dependencies>
     2   <dependency>
     3     <groupId>com.oracle.jdbc</groupId>
     4     <artifactId>ojdbc8</artifactId>
     5     <version>18.3.0.0</version>
     6   </dependency>
     7 </dependencies>
     8 <repositories>
     9   <repository>
    10     <id>maven.oracle.com</id>
    11     <name>oracle-maven-repo</name>
    12     <url>https://maven.oracle.com</url>
    13     <layout>default</layout>
    14     <releases>
    15       <enabled>true</enabled>
    16       <updatePolicy>always</updatePolicy>
    17     </releases>
    18   </repository>
    19 </repositories>
    20 <pluginRepositories>
    21   <pluginRepository>
    22     <id>maven.oracle.com</id>
    23     <name>oracle-maven-repo</name> 
    24     <url>https://maven.oracle.com</url>
    25     <layout>default</layout>
    26     <releases>
    27       <enabled>true</enabled>
    28       <updatePolicy>always</updatePolicy>
    29     </releases>
    30   </pluginRepository>
    31 </pluginRepositories>

      以及本地.m2目录下的settings.xml和settings-security.xml文件(主要是配置你在oralce的用户账号和密码),具体过程可以参看:https://blogs.oracle.com/dev2dev/get-oracle-jdbc-drivers-and-ucp-from-oracle-maven-repository-without-ides。第3、4步生成maven用户目录下的两个xml。

    settings.xml:

    <settings>
    <servers>
      <server>
        <id>maven.oracle.com </id>
        <username>username on oracle site</username>
        <password>output from command:mvn -encrypt-password <any_master_password> or mvn -ep <any_master_password></password>
      <configuration>
        <basicAuthScope>
          <host>ANY </host>
          <port>ANY </port>
          <realm>OAM 11g </realm>
        </basicAuthScope>
        <httpConfiguration>
          <all>
          <params>
            <property>
              <name>http.protocol.allow-circular-redirects </name>
              <value>%b,true </value>
            </property>
          </params>
          </all>
        </httpConfiguration>
      </configuration>
      </server>
      </servers>
    </settings>

    settings-security.xml:

    <settingsSecurity>
    <master>output from command:mvn -emp <any_master_password></master> 
    </settingsSecurity>

      这里有个小坑:关键字settingsSecurity是区分分大小写的。

  • 相关阅读:
    Java学习:面向对象三大特征:封装、继承、多态之封装性
    Java学习:构造方法
    Java学习:集合双列Map
    斗地主综合案例:有序版本(双列)
    JDK9对集合添加的优化
    Java学习:Debug调试程序
    计算一个字符串中每一个字符出现的次数
    Java学习:Map接口
    Java学习:可变参数
    Pediy CTF 2018 reverse
  • 原文地址:https://www.cnblogs.com/badwood316/p/10816574.html
Copyright © 2011-2022 走看看