取出maven项目的一部分作为模块

时间:2012-04-29 10:25:06

标签: java maven dependencies

我有一个maven模块A,它取决于模块B中的类(两者都是项目中的子模块)。

A的{​​{1}}我有以下内容:

pom.xml

但是当我尝试构建 <dependencies> <dependency> <groupId>test.pack</groupId> <artifactId>B</artifactId> <version>1.0-SNAPSHOT</version> </dependency> </dependencies> 时,A没有正确地出现在依赖项中,我在B的{​​A中的类中遇到了编译错误import语句中的1}}包,看起来像test.pack.packFromA

因此,我的import test.pack.packFromB.*依赖项无法正常工作。但是我认为来自B的类会被打包并添加到类路径中,所以我可以使用它们。我试图在该依赖项中添加B,但这没有帮助。我在这做错了什么?提前谢谢。

修改: 父级<type>的{​​{1}}部分看起来像这样:

<modules>

以下是我收到的错误:pom.xml

1 个答案:

答案 0 :(得分:1)

在尝试构建模块A之前,您是否在模块B中完成了mvn install

(如果您执行“mvn package”而不是mvn install,模块B将不会被放置在仓库中,因此Maven在构建模块A时将找不到它。

另外,您是否尝试过从父模块构建多模块项目? (当你这样做时,Maven将以正确的顺序构建模块)

如果不是这样,请验证您引用的类位于模块B中的src/main/java/test/pack/packFromB下。如果它们位于src/test/java..下,则需要特定类型的依赖项。

希望有所帮助。