【发布时间】:2016-08-31 22:38:32
【问题描述】:
考虑一个带有模块的 maven 项目,其中包含一些实用程序 (jar) 和一些 pom,供其他人在他们想要使用其中一些实用程序时参考。
例如在父 pom.xml 中
<artifactId>project-parent</artifactId>
<modules>
<module>client-ref-pom</module> (a module with just one pom.xml)
<module>server-ref-pom</module> (a module with just one pom.xml)
<module>client-utils</module> (a module with some utility classes, needs to ref. client-ref-pom)
<module>server-utils</module> (a module with some utility classes, needs to ref. server-ref-pom)
<module>utils</module> (a module with some utility classes, needs to ref. project-parent)
</modules>
所以如果有另一个项目希望使用 utils,它将引用 ref-pom 作为其父 pom,以便可以继承属性。达到了这个目的。
当前的问题是,当模块 utils 还需要引用 ref-pom 作为其父 pom(并且 ref-pom 将引用 project-parent 作为其父 pom)时,maven 抱怨 'parent.relativePath' 指向到 project-parent 而不是 ref-pom,建议再次验证项目结构。
由于这只是一个警告,我仍然可以编译项目,但我想知道设置项目结构的正确方法,以便 maven 满意并达到我的目的。
【问题讨论】:
-
你能显示你的项目结构(文件夹结构)和你的pom文件的位置吗?
-
总结所有可能的问题:stackoverflow.com/a/62704660/6172857
标签: maven pom.xml project-structure parent-pom