Maven中plugins与pluginManagement的区别说明

网友投稿 1848 2022-12-05

Maven中plugins与pluginManagement的区别说明

Maven中plugins与pluginManagement的区别说明

plugins与pluginManagement的区别

plugins 下的 plugin 是真实使用的,而 pluginManagement 下的 plugins 下的 plugin 则仅仅是一种声明,父项目是不能使用的,子项目中可以对 pluginManagement 下的 plugin 进行信息的选择、继承、覆盖等。

假如存在两个项目,项目A为项目B的父项目,其关系通过pom文件的关系确定。项目A的父pom文件片段如下:

org.apache.maven.plugins

maven-resources-plugin

3.1.0

@

false

如果项目B也想使用该plugin配置,则在项目B的子pom文件中只需要如下配置:

<plugin>

maven-resources-plugin

可以看到,子项目的pom文件中,省去了版本、wNXfbB配置细节等信息,只需要指定groupId和artifactId,其他信息均从父项目的pom文件继承。如果子pom文件需要定制自己的插件,可以另行设置,并会覆盖从父pom文件继承到的内容。

特别提示:dependencies 和 dependencyManagement 均是 project 下的直接子元素,但是 plugins 和 pluginManagement 却是 project 下 build 的直接子元素。

plugins与pluginManagement的关系

在配置SonarQube的时候遇到了一些问题,例如surefire跟failsafe应该写在哪里

pluginManagement的作用类似于denpendencyManagement,只是denpendencyManagement是用于管理项目jar包依赖,pluginManagement是用于管理plugin。

与pom build里的plugins区别是,这里的plugin是列出来,然后让子pom来决定是否引用。

如果要让子模块继承父模块的plugin的使用,还是要在父模块里头声明这些plugin

另外说一下,关于packaging,pom意味着这个包本身不会被打成jar.

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:详解mybatis generator代码生成器的使用
下一篇:使用RestTemplate 调用远程接口上传文件方式
相关文章

 发表评论

暂时没有评论,来抢沙发吧~