Maven安装以及环境配置(Windows)
Maven是什么?
Maven是一个项目管理和综合工具。Maven提供了开发人员构建一个完整的生命周期框架。开发团队可以自动完成项目的基础工具建设,Maven使用标准的目录结构和默认构建生命周期。
在多个开发团队环境时,Maven可以设置按标准在非常短的时间里完成配置工作。由于大部分项目的设置都很简单,并且可重复使用,Maven让开发人员的工作更轻松,同时创建报表,检查,构建和测试自动化设置。
Windows安装Maven
1.首先需要JDK的支持,Maven3.2.*版本需要JDK1.6的支持,Maven3.3.*以上需要JDK1.7以上的支持,JDK的安装以及配置在此不多赘述。
2.前往Maven官网下载zip包,地址:http://maven.apache.org/download.cgi
3.解压之后,记录下路径,在系统环境变量中添加 M2_HOME 和 MAVEN_HOME,最后在PATH中添加。
4.验证是否安装成功,在cmd输入命令mvn -version验证。
若是出现版本的信息,表示安装成功了。
Maven配置
1.Maven本地资源库
Maven的本地资源库是用来存储所有项目的依赖关系(插件jar和其他文件,这些文件被Maven下载)到本地文件夹。很简单,当你建立一个Maven项目,所有相关文件将被存储在你的Maven本地仓库。
Maven的本地资源库默认为 .m2 目录文件夹:
Unix/Mac OS X – ~/.m2
Windows – C:\Documents and Settings{your-username}.m2
我们可以找到 {M2_HOME}\conf\setting.xml, 更新 localRepository项,选择我们想要存放的目录位置。
默认是在user.home下的
改为你想放的位置:
2.Maven中央存储库与远程存储库
当你建立一个 Maven 的项目,Maven 会检查你的 pom.xml 文件,以确定哪些依赖下载。首先,Maven 将从本地资源库获得 Maven 的本地资源库依赖资源,如果没有找到,然后把它会从默认的 Maven 中央存储库 – http://repo1.maven.org/maven2/ 查找下载。
若是中央存储库也没有找到,还可以在pom.xml中自定义远程存储库,Maven会去远程存储库下载,例如:
告诉 Maven 来获得 Java.net 的依赖,你需要声明远程仓库在 pom.xml 文件这样:
<repositories>
<repository>
<id>java.net</id>
<url>https://maven.java.net/content/repositories/public/</url>
</repository>
</repositories>
另外
由于maven中心库是国外网站,连接下载速度很是揪心,所以强烈推荐使用阿里云的镜像库,主流jar包都有,而且速度非常快,如图在.\conf\setting.xml文件中进行如下配置。
<mirrors>
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
</mirrors>
3.安装自定义jar包到本地Maven库
当出现下列情况时:
1.要使用的 jar 不存在于 Maven 的中心储存库中。
2.您创建了一个自定义的 jar ,而另一个 Maven 项目需要使用。
远程服务器需要在settings.xml中配置server用户名密码
<server>
<id>n</id>
<username>abc</username>
<password>12345</password>
</server>
需要手动将所需要的jar包存放至Maven本地资源库,可以再cmd中输入以下命令:
mvn install:install-file -Dfile=c:\userdefined-1.0.jar -DgroupId=pers.test.code -DartifactId=userdefined -Dversion={1.0} -Dpackaging=jar
远程库命令如下
mvn deploy:deploy-file -DgroupId=com.abc.com3rd.policy -DartifactId=policy-sdk -Dversion=20180502102622 -Dpackaging=jar -Dfile=D:\jar\local_policy.jar -DrepositoryId=repo-huotu -Durl=http://repo.abc.com:8081/nexus/content/repositories/releases/ -DgeneratePom=false
各参数代表含义为:
-Dmaven.test.skip=true //跳过编译、测试
-Dfile=D:\MvnProject\service-mvn-1.0.0.jar //jar包文件地址,绝对路径
-DgroupId=pri.roy.mvn.test //gruopId--pom坐标,自定义
-DartifactId=mvn-api //artifactId--pom坐标,自定义
-Dversion //版本号
-Dpackaging //打包方式
-DrepositoryId //远程库服务器ID
-Durl //远程库服务器地址
安装成功后,在pom.xml文件中可以使用了
<dependency>
<groupId>pers.test.code</groupId>
<artifactId>userdefined </artifactId>
<version>1.0</version>
</dependency>