【问题标题】:Maven dependency resolution in a project with modules带有模块的项目中的 Maven 依赖解析
【发布时间】:2011-05-12 06:12:32
【问题描述】:

我的 maven 项目结构如下:

project
  moduleA
  moduleB
  moduleC

moduleB 和 moduleC 依赖于 moduleA。如果我执行'mvn install'命令maven在我的本地存储库中安装moduleA和moduleB之后,maven尝试安装modeleC但没有成功,首先它尝试在所有已知的maven远程存储库中找到工件moduleA,然后,我' m 收到 moduleA artefact 丢失的消息。它是如此磨损,因为有时它工作得很好,有时却不行。因为这个问题,我浪费了很多时间。

工件 moduleA 和 moduleB 在我的本地存储库中。

我在windows 7 pro下的64位机器上使用maven 2.2.1。

有谁知道问题出在哪里?

谢谢,

凯文

【问题讨论】:

    标签: installation maven


    【解决方案1】:

    如果您使用 mvn install,该命令会将工件放入您的本地存储库中。通常在 .m2/repository 下的主目录中,除非您另有指定。如果 moduleC 正在尝试构建(使用 mvn install)并且依赖于 moduleA,则 moduleA 应该在 moduleC 时从本地存储库中提取。如果 moduleC 正在远程查找 moduleA,则 moduleA 永远不会安装到您的本地存储库中。

    检查 pom 文件中的 moduleC。确保 moduleC 的 pom.xml 中 moduleA 的依赖信息与 moduleA 的 pom.xml 中指定的 groupId、artifactId 和 version 匹配。如果匹配,请确保 moduleA 确实在生成工件。它应该在 moduleA 下的目标目录中。如果 moduleA 不是 jar,请确保您在 pom.xml 中为 moduleA 列出了 type 属性,并且 moduleC 的 pom.xml 中为依赖项列出了该类型。

    如果上述方法没有得到一致的解决方案,您可能需要编辑您的问题,添加一些 pom.xml 详细信息。

    【讨论】:

      猜你喜欢
      • 2017-05-27
      • 2019-08-21
      • 2015-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-28
      • 1970-01-01
      相关资源
      最近更新 更多