java - Maven中的ojdbc jar问题
问题描述
我在 Java 8 中开发了一个项目,并在使用 java 8 开发项目时在 maven 中安装了 ojdbc jar。现在我将项目转换为 java 7。这样做时,我面临ojdbc.jar
依赖问题在pom.xml
. 它的显示:
缺少工件 com.oracle:ojdbc7:jar:12.1.0
在 oracle 依赖标签。当我尝试为 ojdbc jar 运行 mvn install 时,也会引发错误。
[错误] 未能在项目 SlotBookingAvailability 上执行目标:无法解析项目 org.logicInfo.oms:SlotBookingAvailability:war:0.0 的依赖关系。1-SNAPSHOT:在https://repo.maven.a中找不到 com.oracle:ojdbc7:jar:12.1.0 失败 pache.org/maven2 缓存在本地存储库中,直到更新间隔才会重新尝试解析中央已过或强制更新。
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>
有人可以帮我解决这个问题吗?
解决方案
我同意 karol Dowbecki 的回答
我给你更多的安装细节从oracle 的网站
下载 jar
将 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 本地存储库中找到这个 jar,比如${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 中使用你的设置
推荐阅读
- c# - 在 ASP.NET Core 3.0 Swagger 中将字符串标记为不可为空
- vue.js - 尝试导入库时出现 Vue.js 错误
- sql-server - SELECT INTO 中断 DDL/DML 触发器,但 CREATE TABLE 后跟 INSERT 有效吗?
- go - 在 Go 中嵌入的惯用方式是什么(与经典 OOP 不同)?
- python - ImportError with SeqIO from Biopython in Spyder
- java - CORDA 无法将状态更改为在流中使用
- docker - 微服务中的服务发现与 docker 中的服务发现
- c# - Select() 性能下降
- python - django 会自动处理自动转义和上下文感知吗?
- java - 在控制器类中模拟的服务层正在执行实际的方法实现