MAVEN详解

**************************Maven*********************************
一、maven(项目管理与构建工具)
1.使用需求
- 企业需求
- 软件开发中遇到的问题
a. jar包的依赖与管理
解决jar包的完全正确性,不同技术框架版本的管理,jar包依赖
struts-core 2.3.16  依赖于 xwork
b. 自动构建项目
- 软件开发:可行性分析--->需求分析--->软件设计--->软件开发--->发布、运维
- 项目构建:清除--->编译--->测试--->测试报告--->打包(jar\war)--->安装--->部署
注:eclipse无法将项目部署到远端服务器

2.引入maven
a.maven介绍
- apache旗下的一款开源工具 
- 核心pom(项目对象模型)  Project Object Model
- 软件构建的整个生命周期(清除--->编译--->测试--->测试报告--->打包(jar\war)--->安装--->部署)
-- maven是采用纯java编写的开源项目管理工具
-- maven采用了一种称之为Project Object Model(POM)概念来管理项目,
-- 项目配置信息都被定义在一个pom.xml文件中,通过该文件maven可以管理项目的整个生命周期,包括清除、编译、测试、报告、打包、部署等等
b. maven 解决的问题
- jar包的声明式依赖管理  struts-core.jar 自动寻找依赖jar包
- 自动构建、发布项目
c. maven、ant、svn
都是软件构建工具,软件管理工具,maven比ant更强大,已经取代ant
maven优点:
- jar包声明式依赖
strut 2.3-16 core
int a;
- jar包仓库
中心仓库 全球所有开源项目的jar包
本地仓库 从中心仓库下载到本地的jar包
test1()   int a =10;
test2()   int a =10;
int a =10;
svn:协同开发工具,版本控制工具
- 项目源码保存
- 历史版本的备份
- 版本的修改情况
二、Maven使用
1. maven目录结构
- lib:maven依赖jar包
- boot:
plexus-classworlds-2.5.2.jar  ---> 类加载器框架,jar包下载的引擎,通过该工具来下载jar包
1.第三方依赖的jar包
2.生命周期插件
清除插件、编译插件、打包插件、部署插件
- bin:
maven命令
mvn 命令
- conf:
setting.xml maven配置文件
-- 本地仓库地址
-- 服务器的验证
2. 测试maven是否配置成功
- 需配置环境变量,命令mvn -version
3. 创建maven规范的项目
a.maven项目目录结构:
-src  sourceFolder
-main
-java   //-包和类

-resource  //除过.java资源和配置文件
-test
-java  //测试代码
-resource  //测试资源
-target:编译好.class文件存放目录,没有此目录,编译好自动创建
-pom.xml   //maven项目配置信息 jar包声明信息、插件信息
注:可以自动构建符合maven规范的项目
1. archetype:generate 按照提示进行选择
2. archetype:gennerate -DgroupId=组织名,公司网址的反写+项目名 
   -DartifactId=项目名/模块名
   -Dversion=版本号
   -Dpackage=代码所存在的包名
b.配置本地仓库 setting.xml 
c.maven默认无生命周期命令插件,通过命令插件来构建项目,会自动下载插件到本地仓库
常用命令有:mvn xxx
clean 清除
complie 编译
test 测试
package 打包
install 安装
deploy 部署 
d.maven生命周期插件和jar包下载路径配置



central
Central Repository
https://repo.maven.apache.org/maven2
default

false






central
Central Repository
https://repo.maven.apache.org/maven2
default

false


never



三、Maven
1. maven术语
a.生命周期
清除、编译、测试、打包、安装、部署
  生命周期插件
mvn 命令(自动去中心仓库下载插件,如果下载过会保存在本地仓库,可以直接使用)
mvn clean 清除插件
b.maven坐标
maven通过坐标的概念来确定唯一标识jar或者war包  
坐标的组成groupId + artifactId + version
groupId: 组id,公司的id 或者公司包名
artifactId:构建物id,产品名或者产品id
version:版本号
c.maven仓库
1.中心仓库 maven\lib\maven-model-builder-3.3.9.jar\org\apache\maven\model\pom.xml
2.本地仓库 setting  F:/mvn_repository/repository
3.镜像仓库 中心仓库在国内的备份
配置setting.xml

  alimaven
  aliyun maven
  http://maven.aliyun.com/nexus/content/groups/public/
  central        

CSDN
2. jar包命名规则
artifactId-version.jar
junit-4.9.jar
mybatis-spring-1.22.jar
3. pom.xml文件详解

4.0.0
com.baizhi
Hello
0.0.1-SNAPSHOT
jar
Hello


junit
junit
4.9

test


四、MyEclipse集成
1. 配置Maven插件
a.MyEclipse集成了maven插件,需做简单配置
installations ---> 选择下载到本地的maven地址
user Setting  ---> 选择maven中setting.xml文件
2. 创建Maven项目
new ---> Maven Project ---> archetype(骨架、框架)
maven-archetype-quickstart:快速构建项目的骨架

你可能感兴趣的:(maven)