Oracle JDBC ojdbc6 Jar как зависимость Maven

Я не могу заставить Maven объединить файл ojdbc6.jar в файл войны проекта. Я работаю в файле POM при указании зависимости непосредственно для инструментов Hibernate. Но он не будет связан с файлом войны проекта, поэтому мой проект не будет работать на Tomcat.

Я пробовал каждое решение, которое я могу найти там в сети, включая те, которые указаны для этого вопроса здесь:

Найти драйвер Oracle JDBC в репозитории Maven

Совсем недавно я сделал следующее:

  • Загрузите файл jar на свой компьютер

  • Выполните следующую команду, чтобы установить банку в мой локальный репозиторий:

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

    (Я тоже пробовал все варианты этой команды.)

  • Наконец, я включил зависимость в мой файл pom:

    <dependency>
        <groupId>com.oracle</groupId>
        <artifactId>ojdbc6</artifactId>
        <version>11.2.0.3</version>
    </dependency>
    
  • Я запускаю чистую сборку, но она терпит неудачу:

    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]
    

Почему это не работает? Я готов бросить дорогие компьютерные части по всей комнате. Это потратило так много времени. (Спасибо, Oracle. Сколько мы заплатили вам снова?)

Это потому, что я нахожусь на Mac, возможно?

Ответ 1

Правильный ответ был предоставлен Рагхурамом в разделе комментариев к моему первоначальному вопросу.

По какой-то причине указание "mvn install" на полный путь физического файла ojdbc6.jar не сработало для меня. (Или я последовательно неоднократно удалял его при запуске команды, но ошибок не было.)

cd-ing в каталог, где я сохраняю ojdb6.jar и запускаю команду оттуда, работал в первый раз.

Если Рагхурам хотел бы ответить на этот вопрос, я скорее приму его ответ. Спасибо всем!

Ответ 2

Лучше добавить новый репозиторий 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'

Ответ 3

Для тех, кто читает этот пост в будущем, вам не нужно записывать CD в каталог, в котором присутствует банка. Вот что вам нужно сделать -

Перейдите в папку проекта, откуда вы можете запускать команды 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>

Ответ 4

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

для решения проблемы ORACLE JAR с приложением Spring,

Oracle JDBC ojdbc6 Jar как зависимость Maven

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

Ответ 5

Сначала вам нужно загрузить конкретную банку с сайта Oracle (ojdbc.jar version 11.2.0.3)

если вы загрузите его в папку 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

Ответ 6

После выполнения

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. Если не проверить настройки вашего репозитория maven в разделе $M2_HOME/conf/settings.xml

Ответ 7

Ниже конфигурация работала для меня. Подробнее см. Ссылку .

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

Ответ 8

Я выполнил следующую команду:

mvn install:install-file -Dfile=E:\JAVA\Spring\ojdbc14-10.2.0.4.0.jar\ojdbc14-10.2.0.4.0.jar -DgroupId=com.oracle -DartifactId=ojdbc14 -Dversion=10.2.0.4.0 -Dpackaging=jar

После установки проверьте, что jar установлен правильно на вашем M2_repo.

Ответ 9

Поскольку Oracle является лицензионным продуктом, существует проблема в добавлении зависимости maven напрямую. Чтобы добавить любую версию ojdbc.jar, можно сделать 2 шага ниже.

  1. Запустите приведенную ниже команду, чтобы установить ojdbc.jar в локальный репозиторий maven.
/opt/apache-maven/bin/mvn install:install-file
    -Dfile=<path-to-file>/ojdbc7.jar
    -DgroupId=com.oracle
    -DartifactId=ojdbc7
    -Dversion=12.1.0.1.0
    -Dpackaging=jar

Это добавит зависимость в локальный репозиторий.

  1. Теперь добавьте зависимость в pom файл
<dependency>
    <groupId>com.oracle</groupId>
    <artifactId>ojdbc7</artifactId>
    <version>12.1.0.1.0</version>
</dependency>

Ответ 10

Добавить следующую зависимость в pom.xml

<dependency>
    <groupId>com.oracle</groupId>
    <artifactId>oracle</artifactId>
    <version>10.2.0.2.0</version>
</dependency>