maven学习-2 坐标和依赖

1.在项目根目录下运行 mvn clean compile
2.需要执行测试 mvn clean test
3.mvn clean package 打包
3. mvn clean install 把构件安装到本地仓库
4.为了生成可执行的jar文件,需要借助maven-shade-plugin


Maven的坐标元素包括groupId,artifactId,version(必选三个)
package,classifier(可选)
version:当前所处的版本
classifier:用来帮助定义输出的一些附属构件。java文档和源代码就是这两个附属构件的classifiere


5.依赖范围Scope
compile:编译依赖范围,默认
test:测试依赖范围
provided:已提供依赖范围,对于编译你和测试的classpath有效,但在运行时无效。典型的例子
是servlet-api,编译和测试项目的时候需要使用该依赖,但是在运行项目事,由于容器已经提供,
就不需要maven重复地引入依赖
runtime:运行范围内有效。JDBC驱动
system:系统依赖范围


6传递性依赖和依赖范围


7.依赖调节

1.路径最短原则

2.声明优先原则


8.可选依赖

便于互斥特性的传递


9.排除依赖&归类依赖&优化依赖

传递性依赖产生问题,eg:当前项目有一个第三方依赖,二这个第三方依赖由于某些原因依赖了另外一个类库的snapshot版本,那么它可能会影响当前项目,这时候就需要

排除这个依赖。

归类依赖:

例如:用property的值替换所有

优化依赖:mvn dependency:list 显示已解析依赖,同时,每个依赖的范围也得以明确表示

                    mvn dependency:tree 依赖树,通过这颗依赖书就能很清楚地看到某个依赖是通过那条路径传入的。

                    mvn dependency:analyze 



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值