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 шага ниже.
- Запустите приведенную ниже команду, чтобы установить 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
Это добавит зависимость в локальный репозиторий.
- Теперь добавьте зависимость в 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>