pom文件配置
pom文件配置
神奇海螺
main test 打包运行
compile 1 1 1
provided 1 1 0
runtime 0 0 1
text 0 1 0
构建命令:
clean 清理
compile 编译
test 测试
site 报告
package 打包
install 运行
deploy 部署到私服
周期:
清理周期:clean
构建周期:compile test package install deploy
报告周期:site
解决打包和报告时jdk和maven版本不兼容问题:
<resources> //配置文件构建
<resource> //具体配置
<directory>src/main/java</directory> //指定目录
<includes> //选择文件
<include>**/*.*</include> //具体选择文件
</includes>
<excludes> //排除文件
<exclude>**/*.java</exclude> //具体排除文件
</excludes>
</resource>
</resources>
//将src/main/java下任意文件构建到项目中,排除.java文件
</build>
依赖传递:自动下载依赖的依赖,尽量使用依赖传递,1.保证依赖链的完整简化依赖导入,2.保证版本没冲突
传递终止:1.到了尽头,2.非compile依赖,3.依赖冲突(依赖重复)
依赖冲突:(依赖重复) 1.避免依赖重复,2.避免循环依赖
重复依赖选择:1.谁短谁优先,2.谁上谁优先,3.手动排除(排除后依然走前两个原则)
继承和聚合:
继承:语法:
只继承父工程pom文件
用于声明dependency版本,子工程用的时候不用写版本了
聚合:父工程中聚合了哪些工程
compile 默认值,编译,运行,打包时都会引入依赖
provided 编译,测试,运行,但打包时不会引入依赖
runtime 编译时不会引入依赖,运行时会引入依赖
system 当依赖不是maven结构,不在maven体系中时,可以用system引入,但是会中断依赖传递
text 只在编译测试和运行测试时引入依赖