我有以下项目包结构。
parent
|- module1
|- module2
|- module3
我能够将 module3 作为依赖项包含在 module1 和 module2 的 pom.xml 文件中。这使我可以访问 module3 中的所有依赖项和代码。
<dependency>
<groupId>my.group</groupId>
<artifactId>module3</artifactId>
<version>1.0.0</version>
</dependency>
但是,当我dependency:tree
在 module1 或 module2 的 pom 文件上运行 maven 命令时,maven 将尝试搜索<servers>
我的 settings.xml 文件中列出的某些内容,以便尝试下载 module3 作为工件。module3 目前没有部署到任何地方<server>
,因此 maven 命令失败并出现以下错误
[ERROR] Failed to execute goal on project module1: Could not resolve dependencies for project my.group:module1:jar:1.0.0-SNAPSHOT: Failed to collect dependencies at my.group:module3:jar:1.0.0-SNAPSHOT: Failed to read artifact descriptor for my.group:module3:jar:1.0.0-SNAPSHOT: Could not transfer artifact my.group:module3:jar:1.0.0-SNAPSHOT from/to MyServer (https://example): Access Denied to: .......etc.
理想情况下,module3 根本不会被部署为工件,而是可能只是具有<packaging>pom</packaging>
. module3 只是一些只能由 module1 和 module2 使用的模块。此外,仅供参考,module3 的依赖树构建得非常好。