[oracle] Oracle JDBC ojdbc6 Jar를 Maven 종속성으로 사용

Maven이 ojdbc6.jar 파일을 내 프로젝트의 war 파일에 번들로 넣을 수없는 것 같습니다. Hibernate 도구에 대한 종속성을 직접 지정할 때 POM 파일 내에서 작동합니다. 그러나 프로젝트의 war 파일과 함께 번들로 제공되지 않으므로 내 프로젝트가 Tomcat에서 실행되지 않습니다.

여기에이 질문에 대해 지정된 솔루션을 포함하여 인터넷에서 찾을 수있는 모든 솔루션을 시도했습니다.

Maven 저장소에서 Oracle JDBC 드라이버 찾기

가장 최근에는 다음을 수행했습니다.

  1. 내 컴퓨터에 jar 파일 다운로드

  2. 다음 명령을 실행하여 jar를 로컬 저장소에 설치합니다.

    mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0.3 -Dpackaging=jar -Dfile=ojdbc6.jar -DgeneratePom=true

    (저도 그 명령의 모든 종류의 변형을 시도했습니다.)

  3. 마지막으로 종속성을 내 pom 파일에 넣습니다.

    <dependency>
        <groupId>com.oracle</groupId>
        <artifactId>ojdbc6</artifactId>
        <version>11.2.0.3</version>
    </dependency>
    
  4. 깨끗한 빌드를 실행했지만 실패합니다.

    mvn -U clean package
    
    [INFO] Scanning for projects...
    [INFO]                                                                         
    [INFO] ------------------------------------------------------------------------
    [INFO] Building jazztwo 0.0.1
    [INFO] ------------------------------------------------------------------------
    Downloading: http://repo1.maven.org/maven2/com/oracle/ojdbc6/11.2.0.3/ojdbc6-11.2.0.3.jar
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD FAILURE
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 0.700s
    [INFO] Finished at: Tue Mar 27 15:06:14 PDT 2012
    [INFO] Final Memory: 3M/81M
    [INFO] ------------------------------------------------------------------------
    [ERROR] Failed to execute goal on project jazztwo: Could not resolve dependencies for project edu.berkeley:jazztwo:war:0.0.1: Could not find artifact com.oracle:ojdbc6:jar:11.2.0.3 in central (http://repo1.maven.org/maven2) -> [Help 1]
    

왜 이것이 작동하지 않습니까? 고가의 컴퓨터 부품을 방안에 던질 준비가되었습니다. 이것은 너무 많은 시간을 낭비했습니다. (감사합니다, 오라클. 다시 얼마를 지불 했습니까?)

내가 Mac을 사용하기 때문일까요?



답변

로컬 저장소에 설치하는 대신 프로젝트에 새 Maven 저장소 (가급적이면 자체 아티 팩토리 사용)를 추가하는 것이 좋습니다.

Maven 구문 :

<dependency>
    <groupId>com.oracle</groupId>
    <artifactId>ojdbc6</artifactId>
    <version>11.2.0.3</version>
</dependency>
... 
<repositories>
    <repository>
      <id>codelds</id>
      <url>https://code.lds.org/nexus/content/groups/main-repo</url>
    </repository>
  </repositories>

Grails 예 :

mavenRepo "https://code.lds.org/nexus/content/groups/main-repo"
build 'com.oracle:ojdbc6:11.2.0.3'


답변

앞으로이 게시물을 읽는 모든 사람을 위해 jar가있는 디렉토리로 이동하지 않아도됩니다. 수행해야 할 작업은 다음과 같습니다.

maven 명령을 실행할 수있는 프로젝트 폴더로 이동합니다 (이 폴더에서 ls -ltr을 수행하면 pom.xml이 표시됩니다).

이 작업을 수행 –

mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0.3 -Dpackaging=jar -Dfile=<Path where the jar is, example downloads>/ojdbc6.jar -DgeneratePom=true

이 작업이 완료되면 다음과 같이 pom.xml에 종속성을 추가 할 수 있습니다.

    <dependency>
        <groupId>com.oracle</groupId>
        <artifactId>ojdbc6</artifactId>
        <version>11.2.0.3</version>
    </dependency>


답변

내 원래 질문에 대한 의견 섹션에서 Raghuram이 정답을 제공했습니다.

어떤 이유로 든 “mvn install”을 물리적 ojdbc6.jar 파일의 전체 경로를 가리키는 것은 저에게 효과가 없었습니다. (또는 명령을 실행할 때 지속적으로 반복했지만 오류가 발생하지 않았습니다.)

내가 ojdb6.jar을 보관하는 디렉토리로 cd-ing하고 거기에서 명령을 실행하면 처음으로 작동했습니다.

Raghuram이이 질문에 대답하고 싶다면 대신 그의 대답을 받아 들일 것입니다. 모두 감사합니다!


답변

mvn install:install-file
-Dfile=C:\Users\xxxx\Downloads\lib\ojdbc6.jar
-DgroupId=com.oracle
-DartifactId=ojdbc6 -Dversion=11.2.0 -Dpackaging=jar

Spring 애플리케이션에서 ORACLE JAR 문제를 해결하려면

Oracle JDBC ojdbc6 Jar를 Maven 종속성으로 사용

    <dependency>
        <groupId>com.oracle</groupId>
        <artifactId>ojdbc6</artifactId>
        <version>11.2.0</version>
    </dependency>`


답변

먼저 Oracle 사이트 (ojdbc.jar 버전 11.2.0.3)에서 특정 jar를 다운로드해야합니다.

C : \ filefolder에 다운로드하면

cmd 프롬프트에서 해당 디렉토리로 이동하여 아래 명령을 제공하면 종속성이 설치됩니다. 그런 다음 프로젝트를 빌드 할 수 있습니다.

mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dpackaging=jar -Dversion=11.2.0.4.0 -Dfile=ojdbc6.jar -DgeneratePom=true


답변

실행 후

mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0.3 -Dpackaging=jar -Dfile=ojdbc6.jar -DgeneratePom=true

.m2 저장소 폴더 (/com/oracle/ojdbc6/11.2.0.3)를 확인하여 ojdbc6.jar이 있는지 확인하십시오. $ M2_HOME / conf / settings.xml에서 maven 저장소 설정을 확인하지 않으면


답변

아래 구성은 나를 위해 일했습니다. 자세한 내용은이 링크 를 참조하십시오.

<dependency>
 <groupId>com.oracle.jdbc</groupId>
 <artifactId>ojdbc7</artifactId>
 <version>12.1.0.2</version>
</dependency>