【发布时间】:2019-02-22 18:22:17
【问题描述】:
我有两个不同的 Maven 项目 - 比如说 ProjectA 和 ProjectB,其中 ProjectA 使用 ProjectB。
这些项目有单独的 pom.xml 文件。我想在 ProjectA 的 pom.xml 中创建一个依赖项并包含 ProjectB。
但是,每次我尝试以clean install 运行时,它总是会失败并显示以下错误。
[WARNING] The POM for database-manager:database-manager:jar:0.0.1-SNAPSHOT is missing, no dependency information available
[ERROR] Failed to execute goal on project cumulus-certificate-generator-attestation: Could not resolve dependencies for project database-manager:database-manager:jar:0.0.1-SNAPSHOT: Could not find artifact cdatabase-manager:cdatabase-manager:jar:0.0.1-SNAPSHOT -> [Help 1]
其中数据库管理器 = ProjectB。
我的依赖项(在 ProjectA pom.xml 中)如下所示:
<dependency>
<groupId>database-manager</groupId>
<artifactId>database-manager</artifactId>
<version>0.0.1-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
我想提一下,我通过包含将包含这两个项目的“主”pom.xml 找到了一个解决方案,但这不是解决方案,因为我有多个 pom.xml 文件和多个项目。 如果这个问题已经回答了,请您指出解决方案,因为我找不到类似的东西。
<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>database-manager</groupId>
<artifactId>database-manager</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>database-manager</name>
谢谢!
【问题讨论】:
-
可以发一下projectB的GAV吗?组和 artifactId 是否正确?
-
@Sridhar 嗨,我添加了 ProjectB pom.xml。
-
错误提示找不到工件。这意味着您的本地 maven 存储库中不存在预期的 jar 文件。 IE。
<your home directory>/.m2/。如果是真的,请先尝试clean installprojectB 并检查它是否在.m2文件夹中创建了jar。其他选项,如果您使用eclipse,请尝试重新索引或使用maven run configuration窗口,检查Resolve workspace dependencies选项。这可能会有所帮助stackoverflow.com/questions/10688344/…