问题描述
我有一个依赖于 Oracle JDBC 库的 Maven 项目,即项目 pom.xml 中的条目是
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc7</artifactId>
<version>12.1.0.2</version>
</dependency>
我在两台不同的机器上有这个项目的副本;一台运行Windows 7,一台运行Windows 10(Maven的版本相同;3.6.3和所需的依赖存在于默认本地存储库中;.m2\repository\com\oracle\ojdbc7\12.1.0.2\ojdbc7-12.1 .0.2.jar)
当我在 Windows 10 机器上运行 mvn clean package
时,没有返回错误并且创建了相关的目标文件。但是,当我在 Windows 7 机器上运行 mvn clean package
时,发生错误,抱怨缺少依赖项 POM 文件; ojdbc7-12.1.0.2.pom.
我可以通过在 Windows 7 机器上手动创建这个文件来解决这个问题,即
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>com.oracle</groupId>
<artifactId>ojdbc7</artifactId>
<version>12.1.0.2.0</version>
</project>
我不明白为什么我需要这样做!!????
解决方法
ojbdb7 不是官方 Maven 存储库的一部分。
您需要手动将其添加到公司存储库或本地存储库中。
我假设您的本地存储库之一拥有它,而另一个没有。
,尝试使用最新的 Oracle JDBC 驱动程序 21.1.0.0。 如果您有 JDK8,那么您可以使用 12.2.0.1
中的 ojdbc8.jar<groupId>com.oracle.database.jdbc</groupId>
<artifactId>ojdbc8</artifactId>
<version>12.2.0.1</version>