摘要:但是,这种行为是危险的,所以最佳实践应该是显示声明任何项目中直接用到的依赖。生命周期和插件的生命周期生命周期清理项目。生命周期建立和发布站点,分享项目信息。
坐标和依赖 依赖冲突的调节
当包的依赖产生冲突,如A->B->X(1.0)和A->D-X(2.0),应该引入X的哪一个版本?消解冲突的法则如下:
路径最近者优先。
如路径长度一样,第一声明者优先。
排除不想要的依赖在引入第三方库时,会自动的引入它们的依赖,有时候传递的依赖并不是我们想要的,可以用exclusion标签排除不想要的库,并且自己在依赖中直接引入想要的库。
使用未声明的依赖com.tc a 1.0.0 com.tt n com.tt n 4.0
在项目中,可以不在pom中直接声明你需要的依赖,因为在其它引入的库中可能已经包含了这个依赖。但是,这种行为是危险的,所以最佳实践应该是显示声明任何项目中直接用到的依赖。
SNAPSHOT的作用依赖模块的快照版本,会保持该模块的定期更新,因为在发布snapshot的模块时,仓库会为其打上时间戳。在用户使用该模块时,无需更改pom中模块的版本号,maven会自动的向仓库对比时间戳是否变化,然后现在最新的版本。
SNAPSHOT版本应该只在组织内部模块之间调试和使用,在真正发布项目时,应该保证所有的依赖的模块都是发布版本,否则可能因为SNAPSHOT版本的不断变化而引入bug。
生命周期和插件 Maven的生命周期clean生命周期:清理项目。
default生命周期:构建的主要步骤,如compile,是核心部分。
site生命周期:建立和发布站点,分享项目信息。
不同的生命周期又有多个阶段,比如clean有pre-clean、clean和post-clean的阶段。
生命周期互相独立,但是步骤之间会有依赖关系,比如default周期中的test就依赖于test-compile等步骤。
插件目标与阶段之间的绑定生命周期有多个阶段,一个插件也有多个目标。比如maven-compiler-plugin插件有compile、testCompile等目标。
阶段会和插件目标绑定来执行自己的功能。比如default周期的complie阶段会和maven-compiler-plugin:compile插件目标绑定。
Maven的聚合和继承多个模块可以放在一个总项目下,然后通过在总项目下一次构建所有的子模块。在总模块pom中加入如下元素:
A B
子项目可以继承父项目的pom中配置的参数,如依赖、插件配置等。可以避免重复,还可以统一配置的依赖、插件版本。子项目需要在pom中添加如下部分:
parent.group parent.artifact parent.version
聚合和继承在maven中是两个不同的概念,但是,可以统一在一个pom文件中。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/67925.html
摘要:本文主要记录下配置的详细步骤,便于初学者快速掌握及运用。到这里,配置就算结束了,在新建一个项目后,会根据中的配置自动下载对应包。总结最基础的配置已经完成,更深入的配置及遇见的坑在实战中不断积累,不断总结。 本文主要记录Windows下IDEA 配置Maven的详细步骤,便于初学者快速掌握及运用。 下载Maven 直接到官网下载需要的版本,直接解压到对应的目录即可,无需安装。showIm...
摘要:插件功能非常强大,,方法跳转提示,分页插件。三地址使用该插件在引入该插件具体使用,我们在以后的中再学习具体的方法。更多请参考学习笔记一入门 mybatis 插件功能非常强大,mybatis-generator,mybatis-plugin方法跳转提示,mybatis-pagehelper分页插件。 一、mybatis-generator 1、mybatis-generator配置 先在...
摘要:当不存在子类,也不存在子类时,规范中定义,在这种情况下,为服务动态生成一个名为的实例,并自动探测匹配资源。其中是中的基类,它继承于情况二当不存在子类,但是存在子类时。以上就是规范中定义的四种服务的方式。 最近在学习 jersey 框架。他是 目前比较流行的 基于 JAX-RS 2.0 规范实现的 RESTful 框架。 我是跟着 《Java RESTful Web Service 实...
摘要:开头正式开启我入职的里程,现在已是工作了一个星期了,这个星期算是我入职的过渡期,算是知道了学校生活和工作的差距了,总之,尽快习惯这种生活吧。当时是看的廖雪峰的博客自己也用做爬虫写过几篇博客,不过有些是在前人的基础上写的。 showImg(https://segmentfault.com/img/remote/1460000010867984); 开头 2017.08.21 正式开启我...
摘要:前提好几周没更新博客了,对不断支持我博客的童鞋们说声抱歉了。熟悉我的人都知道我写博客的时间比较早,而且坚持的时间也比较久,一直到现在也是一直保持着更新状态。 showImg(https://segmentfault.com/img/remote/1460000014076586?w=1920&h=1080); 前提 好几周没更新博客了,对不断支持我博客的童鞋们说声:抱歉了!。自己这段时...
阅读 1082·2021-10-27 14:13
阅读 2610·2021-10-09 09:54
阅读 789·2021-09-30 09:46
阅读 2367·2021-07-30 15:30
阅读 2125·2019-08-30 15:55
阅读 3368·2019-08-30 15:54
阅读 2817·2019-08-29 14:14
阅读 2740·2019-08-29 13:12