Я разработал проект на Java 8 и установил ojdbc jar в maven при разработке проекта с использованием java 8. Теперь я конвертирую проект в java 7. При этом у меня проблема с ojdbc.jar. зависимость в pom.xml. Его показ:
Missing artifact com.oracle:ojdbc7:jar:12.1.0
в теге зависимости оракула. Когда я пытаюсь запустить mvn install для ojdbc jar, это также вызывает ошибку.
[ERROR] Failed to execute goal on project SlotBookingAvailability: Could not resolve dependencies for project org.logicInfo.oms:SlotBookingAvailability:war:0.0. 1-SNAPSHOT: Failure to find com.oracle:ojdbc7:jar:12.1.0 in https://repo.maven.a pache.org/maven2 was cached in the local repository, resolution will not be reat tempted until the update interval of central has elapsed or updates are forced.
pom.xml
<?xml version = "1.0" encoding = "UTF-8"?>
<project xmlns = "http://maven.apache.org/POM/4.0.0" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation = "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.logicInfo.oms</groupId>
<artifactId>SlotBookingAvailability</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>SlotBookingAvailability</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.9.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<start-class>org.logicInfo.oms.SlotBookingAvailability.SlotBookingAvailabilityApplication</start-class>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.7</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc7</artifactId>
<version>12.1.0</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.json/json -->
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20180813</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
Может ли кто-нибудь мне помочь?




Драйверы Oracle JDBC (ojdbc6.jar, ojdbc7.jar, ojdbc8.jar) не публикуются в репозитории Maven Central из-за лицензии Oracle. Если он работал раньше, вы должны были установить его локально (например, запустив mvn install:install-file) или использовать репозиторий, отличный от Maven Central, в котором он был.
Вам необходимо вручную загрузить ojdbc7 с веб-сайта Oracle и согласиться с лицензионным соглашением OTN. В идеале вы должны загрузить ojdbc7 JAR в соответствии с версией вашего сервера Oracle Database (SELECT * FROM v$version).
@Charan, это будет зависеть от того, как вы его настроите. Если вы установите его локально с mvn install:install-file, он будет доступен для всех ваших локальных проектов Maven.
Можете ли вы дать точную команду для локальной установки jar, учитывая, что мой jar находится в C: \ Users \ pboobalan \ Downloads \ ojdbc?
Я согласен с ответом karol Dowbecki
Даю более подробную информацию по установке
Скачиваем банку с сайт оракула
Добавьте ojdbc7.jar в локальный репозиторий maven.
Открыть окно cmd
запустите команду: mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc7 -Dversion=12.1.0 -Dpackaging=jar -Dfile=G:/Jar/ojdbc7.jar
измените версию местоположения имени jar на свою
тогда вы найдете банку в локальном репозитории maven, например ${mavenrepository}/com/oracle/ojdbc7/${yourversion}/
whdeMacBook-Pro:Downloads wh$ mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc7 -Dversion=12.1.0.2 -Dpackaging=jar -Dfile=ojdbc7.jar
[INFO] Scanning for projects...
[INFO]
[INFO] ----------------------< com.newSpark:SparkLearn >-----------------------
[INFO] Building SparkLearn 1.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- maven-install-plugin:2.4:install-file (default-cli) @ SparkLearn ---
[INFO] Installing /Users/wh/Downloads/ojdbc7.jar to /server/mavenrepository/com/oracle/ojdbc7/12.1.0.2/ojdbc7-12.1.0.2.jar
[INFO] Installing /var/folders/fc/23q8bt313pgbrxktr9f03ms80000gn/T/mvninstall7641723653608629745.pom to /server/mavenrepository/com/oracle/ojdbc7/12.1.0.2/ojdbc7-12.1.0.2.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.564 s
[INFO] Finished at: 2018-11-04T14:33:34+08:00
[INFO] -----------------------------------
тогда вы можете использовать свои настройки в своем maven pom.xml
Когда я попытался запустить указанную выше команду для установки пакета, возникло следующее исключение: «[ОШИБКА] Не удалось выполнить цель org.apache.maven.plugins: maven-install-plugin: 2.5.2: install- file ( default-cli) в проекте SlotBookingAvailability: Выполнение по умолчанию ult-cli цели org.apache.maven.plugins: maven-install-plugin: 2.5.2: файл install- не удалось: ar: 1.6: Не удалось прочитать дескриптор артефакта для commons-codec: commons-codec: jar: 1 .6: Не удалось передать артефакт org.apache.commons: commons-parent: pom: 22 из / в repo.maven.apache.org/maven2: Получено fatal alert: protocol_ version "
Узнал об этом из-за проблемы с TLSv1.2 в Java 7, поэтому попытался включить TLSv1.2. Это также дает исключение из-за отсутствия ojdbc.jar "[ОШИБКА] Не удалось выполнить цель в проекте SlotBookingAvailability: не удалось разрешить зависимости для проекта org.logicInfo.oms: SlotBookingAvailability: war: 0.0. 1-SNAPSHOT: Не удалось найти com .oracle: ojdbc7: jar: 12.1.0 в repo.maven.a pache.org/maven2 был кэширован в локальном репозитории, разрешение не будет повторяться до тех пор, пока не истечет интервал обновления центрального сервера или пока обновления не будут принудительно - "
'Не удалось найти com.oracle:ojdbc7:jar:12.1.0 в repo.maven.a pache.org/maven2', ваш файл jar может иметь некоторую проблему, вы неправильно установили его в свой репозиторий maven
Загрузите драйверы Oracle JDBC из OTN или вы можете загрузить их из репозитория Oracle Maven (maven.oracle.com). Обратитесь к блог за инструкциями по загрузке из Oracle Maven.
Я сделал, я получаю исключение при попытке добавить банку в maven с помощью mvn install: install-file -Dfile = C: \ Users \ pboobalan \ Downloads \ ojdbc \ ojdbc7.jar -DgroupId = com.oracle -DartifactId = ojdbc7 -Dversion = 12.1.0 -Dpackaging = jar
Я загрузил ojdbc7.jar вручную с сайта Oracle и добавил, когда разработал свое приложение на java 8. Нужно ли мне устанавливать заново, когда я конвертирую свое приложение в java 7?