目录
1.简介
(1)统一开发规范与工具。
(2)统一管理jar包。
2.安装
2.1 准备工作
(1)java开发环境(JDK1.8)。
(2)Maven下载地址:http://maven.apache.org/release-notes-all.html(最新版本)。
2.2 安装
(1)第一步:下载maven并解压压缩包,结构如图:
(2)第二步:配置环境变量maven为D:\Program Files\apache-maven-3.5.3,如图:
(3)第三步:把环境变量加入到path,如图
(4)第四步:验证是否成功,打开cmd,输入mvn -v命令,如图:
3.仓库的概念
3.1 本地仓库
在本地maven安装包找到setting.xml配置文件路径:D:\Program Files\apache-maven-3.5.3\conf。maven默认仓库地址${user.home}/.m2/repository改为E:\java\maven\repository,如图:
3.2 中央仓库
中央仓库是默认的远程仓库,如果不做任何特殊配置将会从中央仓库下载依赖。
3.3 其他远程仓库
添加其他远程仓库只需要在项目的pom.xml文件中添加如下配置:
4.项目的创建
4.1 准备工作
(1)工具:eclipse。
(2)创建项目步骤:file-new-maven project
4.2 java项目
(1)第一步:创建之后出现下图,点击next。
(2)第二步:出现下图之后选中红框中jar包,点击next。
(3)第三步:在下图中填写相应的参数,点击finish,完成创建。
(4)第四步:创建之后会在工具中出现对应项目,结构如图:
(5)第五步:运行之后会在控制台出现Hello World!。
4.3 web项目
(1)第一步:创建之后出现下图,点击next。
(2)第二步:出现下图之后选中红框中jar包,点击next。
(3)第三步:在下图中填写相应的参数,点击finish,完成创建。
(4)第四步:创建之后会在工具中出现对应项目,结构如图:
(5)第五步:修改Project Facets的配置。
A.org.eclipse.jdt.core.prefs中的版本1.5改为1.8(当前电脑java版本)。
B.org.eclipse.wst.common.project.facet.core.xml中的Java版本改为1.8(当前电脑java版本),jst.web版本改为3.0(对应Java版本)。
C.修改完之后,Project Facets配置如图所示。
(6)第六步:运行之后通过http://localhost:8080/web_demo/地址访问。
5.常用命令
(1)mvn -v:查看maven版本。
(2)mvn eclipse:eclipse:生成eclipse项目:
(3)mvn compile:编译。
(4)mvn test:测试。
(5)mvn package:打包。
(6)mvn clean:删除target目录。
(7)mvn install:安装jar包到本地仓库。
6.pom.xml文件
6.1 简介
pom为Project Object Model的简写,是项目对象模型,通过xml格式保存pom.xml文件。该文件用于管理:源代码、配置文件、开发者的信息和角色、问题追踪系统、组织信息、项目授权、项目url、项目的依赖关系等等。
6.2 协作关系
groupId:组织标识,例如:com.hebao.web.demo.project,在M2_REPO目录下,将是: com/hebao/web/demo/project目录。
artifactId:项目名称,例如:web_demo,在M2_REPO目录下,将是:com/hebao/web/demo/project/web_demo目录。
version:版本号,例如:1.0,在M2_REPO目录下,将是:com/hebao/web/demo/project/web_demo/1.0目录。
packaging:打包的格式,可以为:pom , jar , maven-plugin , ejb , war , ear , rar , par。
6.3 依赖关系
scope:jar包依赖范围。
7.私服的创建
7.1 简介
(1)概念与结构
私服是架构在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构件。有了私服之后,当maven需要下载构件时,直接请求私服,私服上存在则下载到本地仓库;否则,私服请求外部的远程仓库,将构件下载到私服,再提供给本地仓库下载。原理如下图:
(2)仓库特点:点击左侧 Repositories链接,查看 Nexus内置的仓库(访问链接:http://localhost:8081/nexus)
Hosted宿主仓库:主要用于部署无法从公共仓库获取的构件以及自己或第三方的项目构件。Nexus内置了三个host库。
3rd party:第三方库,如mysql的jdbc驱动jar。
Release:自己开发的release版本的jar。
Snapshots:自己开发的snapshot版本的jar包(可理解为测试版本)。
Proxy代理仓库:代理公共的远程仓库。
Virtual虚拟仓库:用于适配maven。
Group仓库组:Nexus通过仓库组的概念统一管理多个仓库。Nexus内置了一个group仓库组“public repositories”,这个仓库组包含了4个仓库。
7.2安装及配置
(1)第一步:下载并解压nexus,结构如图:
(2)第二步:配置环境变量NEXUS为D:\Program Files\nexus-2.14.8-01-bundle\nexus-2.14.8-01:
(3)第三步:把环境变量添加到path,如下图:
(4)第四步:验证是否成功,打开cmd,输入命令:nexus start。
8.与私服的交互
8.1 上传jar包到私服
(1)第一步:修改maven的配置文件setting.xml,添加以下内容。
(2)第二步:在项目的配置文件pom.xml中添加以下内容。
(3)第三步:从cmd命令中进入到项目目录中,并在此目录输入如下命令。
(4)第四步:执行命令,最后出现BUILD SUCESS,说明上传成功。
(5)第五步:进入到snapshots可以看到上传的项目。
8.2 从私服下载jar包
(1)第一步:在项目的配置文件pom.xml添加以下代码。
(2)第二步:在pom文件添加项目依赖,如图所示表示加载了本空间下的项目。
(3)第三步:把本地项目关闭,项目上会出现一个感叹号。
(4)第四步:从cmd命令中进入到项目目录中,并在此目录输入如下命令。
(5)第五步:执行命令从nexus仓库中获取jar包。
(6)第六步:项目中加载java_demo.jar成功,说明下载成功了。