Maven 依赖关系管理机制及Maven多POM继承

发布时间:2019-11-19 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Maven 依赖关系管理机制及Maven多POM继承脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

继承是包依赖管理的最简单手段

Maven对依赖包的关系管理的主要手段是继承,这很像Java语言的继承关系一样。例如最简单的继承方式,在parent pom文件定义了jar的version,在children pom中可以不定义jar的version,而children也可以定义version来覆盖parent的version,这种思想完全和Java的继承与重载机制一致。

<parent>     <groupId>...</groupId>     <artifactId>...</artifactId>     <version>x.x.version</version> </parent>

单继承机制的欠缺及多继承的支持

关于Java为什么被设计成不支持多继承,你有什么想说的吗?设计Java的老人家也许有他老人家当时的理由,而在Java8支持了接口里可有默认方法的实现,这虽然没有摆脱Java单继承的限制,但也表明了Java对多继承机制的一种支持。Maven对继承的管理机制和Java的继承机制如出一辙,同样也面对着这样的问题,如一个pom只可以继承一份pom,那如果有多份pom想继承该怎么办,下面是Maven给出一种办法:

<dependencyManagement>     <dependencies>         <dependency>             <groupId>a.b.c</groupId>             <artifactId>def</artifactId>             <version>x.x.version</version>             <type>pom</type>             <scope>import</import>         </dependency>     </dependencies> </dependencyManagement>  <dependencies>     <dependency>         <!—继承上述pom的jar的version定义 -->         <groupId>a.b.c</groupId>         <artifactId>def</artifactId>     </dependency> </dependencies>

利用scope:import的方式可以解决单继承的问题,这样也相当于继承了这份pom,我们可以在这份pom文件里定义jar的version,然后在依赖时就不需要传入version配置了

脚本宝典总结

以上是脚本宝典为你收集整理的Maven 依赖关系管理机制及Maven多POM继承全部内容,希望文章能够帮你解决Maven 依赖关系管理机制及Maven多POM继承所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。