一.Maven入门
1.1.maven定义:
maven是跨平台的项目管理工具,主要服务于基于java平台的项目构建,依赖管理和项目信息管理;
1.2.maven项目构建:
项目构建过程包括【清理项目】→【编译项目】→【测试项目】→【生成测试报告】→【打包项目】→【部署项目】这几个步骤,这六个步骤就是一个项目的完整构建过程。理想的项目构建是高度自动化,跨平台,可重用的组件,标准化的,使用maven就可以自动完成项目构建过程。
1.3.优点:
- Maven中使用约定,约定java源代码代码必须放在哪个目录下,编译好的java代码又必须放到哪个目录下,这些目录都有明确的约定;
- Maven的每一个动作都拥有一个生命周期,例如执行 mvn install 就可以自动执行编译,测试,打包等构建过程;
- 只需要定义一个pom.xml,然后把源码放到默认的目录,Maven帮我们处理其他事情;
- 使用Maven可以进行项目高度自动化构建,依赖管理(这是使用Maven最大的好处),仓库管理;
1.4.常用命令:
使用Maven编译项目,编译项目的命令是:"mvn compile";
使用Maven清理项目,清理项目的命令是:"mvn clean";
- 使用Maven测试项目,测试项目的命令是:"mvn test";
- 使用Maven打包项目,打包项目的命令是:"mvn package";
使用Maven部署项目,部署项目的命令是:"mvn install";就把maven构建项目的【清理】→【编译】→【测试】→【打包】的这几个过程都做了,同时将打包好的jar包发布到本地的Maven仓库中;
1.5.maven创建项目:
mvn archetype:create或者mvn archetype:generate 固定写法
-DgroupId 组织标识(包名)
-DartifactId 项目名称
-DarchetypeArtifactId 指定ArchetypeId,maven-archetype-quickstart,创建一个Java Project;maven- archetype-webapp,创建一个Web Project
-DinteractiveMode 是否使用交互模式
archetype是mvn内置的一个插件,create任务可以创建一个java项目骨架,DgroupId是软件包的名称,DartifactId是项目名,DarchetypeArtifactId是可用的mvn项目骨架,目前可以使用的骨架有:
- maven-archetype-archetype
- maven-archetype-j2ee-simple
- maven-archetype-mojo
- maven-archetype-portlet
- maven-archetype-profiles (currently under development)
- maven-archetype-quickstart
- maven-archetype-simple (currently under development)
- maven-archetype-site
- maven-archetype-site-simple
- maven-archetype-webapp
每一个骨架都会建相应的目录结构和一些通用文件,最常用的是maven-archetype-quickstart和maven-archetype-webapp骨架。maven-archetype-quickstart骨架是用来创建一个Java Project,而maven-archetype-webapp骨架则是用来创建一个JavaWeb Project。
1.6.maven搭建nexus私服:
为什么要搭建nexus私服,原因很简单,有些公司都不提供外网给项目组人员,因此就不能使用maven访问远程的仓库地址,所以很有必要在局域网里找一台有外网权限的机器,搭建nexus私服,然后开发人员连到这台私服上,这样的话就可以通过这台搭建了nexus私服的电脑访问maven的远程仓库。