一,maven打包三种方式:war web项目, jar java项目, pom聚合工程。
二,maven可以通过简单的一些命令实现项目的生命周期(项目构建包括:清理、编译、测试、部署等过程 ):
1,clean 是 maven 工程的清理命令,执行mvn clean 会删除 target 目录及内容
2,compile 是 maven 工程的编译命令,作用是将 src/main/java 下的文件编译为 class 文件输出到 target。
3,test 是 maven 工程的测试命令 mvn test,会执行src/test/java下的所有的单元测试类中的所有测试方法都会一次执行完毕。
4,package 是 maven 工程的打包命令,执行mvn package对于 java 工程执行 package 打成 jar 包,对于web 工程打成war 包。打包后会在target目录下生成xxx.jar或xxx.war(即打包后生成文件)
5,install 是 maven 工程的安装命令,执行mvn install 将 maven 打成 jar 包或 war 包发布到本地仓库。
6,deploy是打包后发动到远程仓库。
三,依赖传递就是导入一个依赖 这个依赖相关联得jar包也会导入进来,不同依赖的两个以来,可以相关联的jar包一样但是版本不一样。因为有依赖传递所以有依赖冲突。解决依赖冲突:1,优先声明原则,2,路径近者优先原则(直接把jar包写入pom文件中),3,排除依赖,4,锁定版本等。
四,maven 项目也可以分模块写,在不同模块的pom文件中导入相应依赖的模块的坐标。
五,maven仓库分为:本地仓库,远程仓库(私服,用nexus,需要在Maven中seting.xml,和pom文件中配置网址),中央仓库。本地仓库模块的jar包只能发布到本地,而配置了远程仓库就可以发动到外面的服务器,其他人就可以用了。