1.21 工程化之Maven相关知识(项目开发基础)
-
Maven是什么
-
Maven是项目管理工具,通过配置对JAR包管理
-
Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。
-
Maven这个单词来自于意第绪语(犹太语),意为知识的积累,最初在Jakata Turbine项目中用来简化构建过程。
-
概括地说,Maven简化和标准化项目建设过程。处理编译,分配,文档,团队协作和其他任务的无缝连接。 Maven增加可重用性并负责建立相关的任务。
-
Maven的核心功能便是合理叙述项目间的依赖关系,通俗点讲,就是通过pom.xml文件的配置获取jar包。
-
Maven分快照版和发布版本
-
Maven的优点
-
约定优于配置
-
测试性好
-
构建简单
-
支持插件
-
使用方式
-
安装和使用
-
命令
-
mvn clean package 清理打包
-
打包前清理掉之前有过打包的文件夹target
-
mvn comlile 编译
-
1. 开始项目打包
-
2. 执行这步可以不用执行compile了
-
3. package包括了编译、打包这两步
-
4. package完成后,会自动生成一个target文件,根据你编写的pom打包命令和assembly文件可以在 \target\dist 目录下找到你打包好的项目文件夹和项目压缩包
-
mvn install Jar包放到./m2l路径下
-
加载顺序
-
本地配置:用户下的:$MAVEN_HOME/conf/setting.xml。存储位置:D:\java\maven\repository
-
第三方仓库:又称为内部中心仓库,也称为私服,一般由公司建立。
-
中央仓库:Maven内置了远程公用仓库:http://repo1.maven.org/maven2
-
生命周期
-
lifecycle生命周期/phase阶段/goal
-
1.clean 里有pre-clean,clean目标,post-clean
-
2 default 常见的有compile,package ,install ,depoly......
-
3 site 里有 pre-site,site,post-site,site-deploy
-
1. A Build Lifecycle is Made Up of Phases(构建生命周期由多个阶段组成)
-
2. A Build Phase is Made Up of Plugin Goals(构建阶段由插件目标组成)
-
实际命令
-
mvn clean package -DskipTests -P dev/sit/uat/prd
-
超级pom
-
pom常用的配置标签
-
1. groupId com.gupaoedu 唯一标识
-
2. artfactId 功能命名
-
3. version 版本号
-
4. packaging 打包方式 默认是jar
-
MAven的快照版本和发布版本
-
快照(SNAPSHOT)是一种特殊的版本,指定了某个当前的开发进度的副本。不同于常规的版本,Maven每次构建都会在远程仓库中检查新的快照。
-
版本(Version)的情况下,如果Maven以前下载过指定的版本文件,比如说data-service:1.0,Maven将不会再从仓库下载新的可用的1.0文件。若要下载更新的代码,data-service的版本需要升到1.1。
-
Maven 和 Ant 的差异
-
Maven 和 Ant 针对构建问题的两个不同方面。Ant 为 Java 技术开发项目提供跨平台构建任务。Maven 本身描述项目的高级方面,它从 Ant 借用了绝大多数构建任务。
-
扩展问题
-
怎么解决冲突
-
代码质量不过关怎么设置不让提代码
-
怎么解决A项目关联B项目的JAR包
努力不一定成功,但不努力一定会失败~