linux怎么查看本机内存大小
295
2022-08-25
【Maven】依赖管理
文章目录
依赖管理
一、依赖配置二、依赖传递三、可选依赖四、排除依赖五、依赖范围
依赖管理
一、依赖配置
依赖指当前项目运行所需要的jar,一个项目可以设置多个依赖格式:
二、依赖传递
依赖具有传递性
直接依赖:在当前项目中通过依赖配置建立的依赖关系间接依赖:即资源的资源,如果当前项目的资源依赖其他的资源,那么也就是当前的项目简介依赖其他资源
举个例子,首先创建三个Maven项目:
项目中依次导入log4j的1.2.12、1.2.13、1.2.14版本
假设当前项目2中需要用到项目3,也就是项目2用到了项目3的资源,那么此时该怎么办呢?
很简单,我们只需要将项目3的id信息加入到项目2的依赖中,导入即可(如上图所示),导入之后项目2中的依赖项中就可以看到项目3的1.2.14版本log4j依赖,假设我们在项目3中添加junit的依赖,那么在项目2的依赖中也会自动添加。
依赖传递中的冲突问题
三、可选依赖
可选依赖指对外隐藏当前所依赖的资源 — 不透明
当我们在项目3的junit依赖中配置optional参数时,可以发现在项目2的依赖传递中就被隐藏掉了。
四、排除依赖
排除依赖指主动断开依赖的资源,被排除的资源无需指定版本 — 不需要
在项目2中传递项目3依赖的时候,添加排除依赖log4j,可以看到右侧项目2中项目3中的log4j依赖自动没了。
五、依赖范围
依赖的jar默认情况可以在任何地方使用,可以通过scope标签设定其作用范围
作用范围:
主程序范围有效(main文件夹范围内)测试程序范围有效(test文件夹范围内)是否参与打包(package指令范围内)
以test为例,我们在依赖中导入mybatis的依赖,并且添加依赖范围为test。同时,在main和test文件下创建java文件,同时引用SqlSession对象,可以明显发现,main中的程序中不能都导包(import报灰色),test中的程序中可以导入。
依赖范围的传递性:
带有依赖范围的资源在进行传递时,作用范围将受到影响
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~