【发布时间】:2011-01-31 11:58:59
【问题描述】:
好吧,我以为我了解如何使用 Maven...
我有一个主项目M,它有子项目A、B 和C。 C 包含A 和B 需要的一些通用功能(主要是接口)。我可以从项目根目录(M 目录)运行 mvn compile jar:jar 并获取 JAR 文件 A.jar、B.jar 和 C.jar。 (所有这些工件的版本目前都是2.0-SNAPSHOT。)
M 目录中的主文件pom.xml 在其<dependencyManagement> 标签下列出了C,因此A 和B 可以通过仅包含引用来引用C,如下所示:
<dependency>
<groupId>my.project</groupId>
<artifactId>C</artifactId>
</dependency>
到目前为止,一切都很好。我可以从命令行运行mvn compile,一切正常。但是当我在 NetBeans 中打开项目时,它会抱怨以下问题:“某些依赖项工件不在本地存储库中”,并且它说缺少的工件是 C。同样从命令行,如果我切换到 A 或 B 目录并尝试运行 mvn compile 我会收到“构建错误:无法解析工件。”
我希望我可以手动转到构建 C.jar 的位置并运行 mvn install:install-file,但我宁愿找到一个解决方案,使我能够直接在 NetBeans 中(和/或在 Eclipse 中使用 m2eclipse)工作。
我做错了什么?
【问题讨论】: