Я не могу заставить Maven связать файл ojdbc6.jar с файлом war моего проекта. У меня он работает в файле 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?
ojdbc6-11.2.0.3.jar
доступен ли файл в вашем локальном репозитории в правильной папке?mvn install:install-file
что не сработало. Вы должны указать абсолютное местоположениеojdbc6.jar
или запустить команду из папки, которая ее содержит. Имя файла не проблема. Вы можете запустить с-X
флагом, чтобы вы могли отлаживать информацию.install-file
? Maven должен сообщить вам, куда он устанавливает файл и были ли ошибки.Ответы:
Лучше добавить новый репозиторий Maven (желательно с использованием вашего собственного артефакта) в свой проект, а не устанавливать его в локальный репозиторий.
Синтаксис Maven:
Пример Grails:
источник
Для тех, кто читает этот пост в будущем, вам не нужно переходить cd в каталог, в котором находится jar. Вот что вам нужно сделать -
Перейдите в папку своего проекта, откуда вы можете запускать команды maven (когда вы выполняете ls -ltr в этой папке, вы должны увидеть pom.xml)
Сделай это -
Как только это будет сделано, вы можете добавить зависимость в свой pom.xml, примерно так:
источник
Maven > Update Project
. Потом все прекрасно заработало. Этот шаг может быть очевиден, но я решил, что добавлю его.Правильный ответ был предоставлен Рагурамом в разделе комментариев к моему первоначальному вопросу.
По какой-то причине указание "mvn install" на полный путь к физическому файлу ojdbc6.jar у меня не сработало. (Или я постоянно постоянно ошибался при запуске команды, но ошибок не было.)
cd-ing в каталог, где я храню ojdb6.jar, и запуск команды оттуда сработал в первый раз.
Если Рагурам захочет ответить на этот вопрос, я приму его ответ. Спасибо всем!
источник
чтобы решить проблему ORACLE JAR с приложением Spring,
Oracle JDBC ojdbc6 Jar как зависимость Maven
источник
Сначала вам нужно загрузить конкретную банку с сайта Oracle (ojdbc.jar версии 11.2.0.3)
если вы загрузите его в C: \ filefolder
перейдите в этот каталог в командной строке cmd и введите следующую команду. Она установит зависимость. Затем вы можете построить свой проект.
источник
После выполнения
проверьте папку репозитория .m2 (/com/oracle/ojdbc6/11.2.0.3), чтобы узнать, существует ли ojdbc6.jar. Если нет, проверьте настройки репозитория maven в $ M2_HOME / conf / settings.xml
источник
Ниже конфиг работал у меня. Перейдите по этой ссылке для получения более подробной информации.
источник
Поскольку Oracle является лицензионным продуктом, существует проблема прямого добавления зависимости maven. Чтобы добавить любую версию ojdbc.jar, можно выполнить 2 шага ниже.
Это добавит зависимость в локальный репозиторий.
источник
Я выполнил команду ниже, это сработало:
После установки убедитесь, что jar правильно установлен на вашем M2_repo.
источник
Я пробовал использовать зависимость без тега версии, и у меня она отлично сработала.
источник
Добавить следующую зависимость в pom.xml
источник
Перейдите на диск C-> user-> PcName-> find .m2 и вставьте туда загруженный файл jar ojdbc, сервер автоматически выберет это.
источник
Драйверы Oracle JDBC и другие сопутствующие Jar-файлы доступны в Central Maven. Мы предлагаем использовать официальные поддерживаемые версии Oracle JDBC из 11.2.0.4, 12.2.0.2, 18.3.0.0, 19.3.0.0, 19.6.0.0 и 19.7.0.0. Они доступны в центральном репозитории Maven . Дополнительные сведения см. В руководстве Maven Central .
Рекомендуется использовать последнюю версию. Ознакомьтесь с FAQ для совместимости с JDK.
источник