日期:2014-05-20  浏览次数:20875 次

maven 子项目如何使用父项目的jar包
需要做如何配置呢,在子项目的pom.xml里面

------解决方案--------------------
父项目的pom.xml dependencymanagement怎么写的?
------解决方案--------------------
无法使用。父项目必须是<packaging>pom</packaging>,就是没有Jar的。你要使用其他项目的包,就用dependency。如果你出现了想用父项目jar包的情况,那我想你可能对maven的功能理解错了。maven只是一个build tool,它管理的是项目依赖和build过程,它的“父项目”只是pom.xml的设置上的继承,也就是build过程的继承和共享,并不是代码层面的复用。
------解决方案--------------------
子项目的pom.xml仍然要写dependency的。
------解决方案--------------------
引用:
Quote: 引用:

无法使用。父项目必须是<packaging>pom</packaging>,就是没有Jar的。你要使用其他项目的包,就用dependency。如果你出现了想用父项目jar包的情况,那我想你可能对maven的功能理解错了。maven只是一个build tool,它管理的是项目依赖和build过程,它的“父项目”只是pom.xml的设置上的继承,也就是build过程的继承和共享,并不是代码层面的复用。

如果你出现了想用父项目jar包的情况 我仍然要用dependency 来找到依赖关系吗?

没错
------解决方案--------------------
引用:
Quote: 引用:

Quote: 引用:

无法使用。父项目必须是<packaging>pom</packaging>,就是没有Jar的。你要使用其他项目的包,就用dependency。如果你出现了想用父项目jar包的情况,那我想你可能对maven的功能理解错了。maven只是一个build tool,它管理的是项目依赖和build过程,它的“父项目”只是pom.xml的设置上的继承,也就是build过程的继承和共享,并不是代码层面的复用。

如果你出现了想用父项目jar包的情况 我仍然要用dependency 来找到依赖关系吗?

没错

但是父项目是没有Jar包的
------解决方案--------------------
如果父pom中使用的是<dependencies>....</dependencies>方式,则子pom会自动使用pom中的jar包,如果父pom使用<dependencyManagement><dependencies>....</dependencies></dependencyManagement>方式,则子pom不会自动使用父pom中的jar包,这时如果子pom想使用的话,就要给出groupId和artifactId,无需给出version