我在this问题中提到了一个情况。
我有一个带有父项目P和两个子模块A和B的多模块Maven项目,当我只有A作为子模块时,它工作得很好。我在主项目中添加了一个新的源代码文件夹,创建了一个包并添加了一个类(我在这里做错了什么吗?),让我们称之为模块B。现在,我在包A的类中导入B包中的类,但是A的pom没有被更新到包含B作为依赖项,因此当我试图编译父项目时,它会给出未定义的错误符号B。
编辑:添加poms和代码
这是A项目的pom
<dependencies>
<dependency>
<groupId>javax.slee</groupId>
<artifactId>jain-slee</artifactId>
</dependency>
<dependency>
<groupId>org.mobicents.servers.jainslee.core</groupId>
<artifactId>fault-tolerant-ra-api</artifactId>
<version>2.6.0.FINAL</version>
</dependency>
<dependency>
<groupId>org.mobicents</groupId>
<artifactId>hello-slee-world-sbb</artifactId>
<version>1.0</version>
</dependency>
</dependencies>现在它提到了B的依赖性。这是B在A项目中的参考。
import BPackage.*;这就是我在A中使用B的方法。
BPackage中只有一个名为BClass的类。现在我要问的是,我是否错误地添加了包,也就是说,我需要添加一些东西吗?所以它的pom被创建,它的依赖被添加到A中。
此外,我希望在编译父程序时同时构建B和A,所以在这种情况下,我想我也需要在父母pom中添加A。这是父母的pom
<modules>
<module>sbb</module>
<module>customRAType-ratype</module>
<module>customAdaptor-ra</module>
<module>du</module>
</modules>customAdaptor-ra是项目A
发布于 2013-02-19 15:33:45
每个项目都需要一个pom.xml。最高级的项目需要
<modules>
<module>project1</module>
<module>project2</module>
</modules>如果project2依赖于project1,则需要在项目2的pom.xml中为其定义一个<dependency/>。
https://stackoverflow.com/questions/14960005
复制相似问题