windows安装maven
项目名称
运维培训
文件名称
windows安装maven
编制部门
后台运维
作者
刘珂
当前版本
201807170945
受众范围
后台运维
文档控制
修改记录
日期
版本
修改类型
修改主要内容
作者
◆修改类型:A增加、B删除、C修改
审阅人
姓名
部门
职位
审阅签字
审阅时间
存档
存档时间
存放方式
存放地点、位置
备注
◆存放方式:A电子、B纸质
目录
1 介绍 1
2 安装 3
3 配置 4
3.1 Maven本地资源库 4
3.2 Maven配置文件 5
做java开发时会用到很多第三方jar,这些jar可以通过手动下载然后复制到项目类路径如lib目录使用,也可以通过maven来自动下载依赖的jar,只需要在maven项目的pom.xml配置文件中增加配置即可。
示例中引用了junit、logback、h2等第三方类库:
首先需要JDK的支持:
Maven3.2版本需要JDK1.6的支持,Maven3.3及以上需要JDK1.7及以上的支持。
安装包下载:
http://maven.apache.org/download.cgi。
安装:
即解压。之后,记录下路径,在系统环境变量中添加 M2_HOME 和 MAVEN_HOME,在PATH中添加%M2_HOME%\bin;%MAVEN_HOME%bin;
验证是否安装成功,在cmd输入命令mvn -version验证。
若是出现版本的信息,表示安装成功了。
Maven的本地资源库是用来存储所有项目的依赖关系(插件jar和其他文件,这些文件被Maven下载)到本地文件夹。当建立一个Maven项目,所有相关文件将被存储在你的Maven本地仓库。
Maven的本地资源库默认为用户主目录下的 .m2 目录:
Unix 为 ~/.m2/repository
Windows 为 C:\Users\{your-username}.m2\repository
{MAVEN_HOME}\conf\setting.xml
localRepository项,可以设置我们想要存放仓库文件的目录位置。
默认是在user.home下的
改为你想放的位置如:
当你建立一个 Maven 类型的项目时,Maven 会检查你的 pom.xml 文件,以确定哪些依赖下载。
首先,Maven 将从本地资源库获得 Maven 的本地资源库依赖资源,如果没有找到,然后把它会从默认的 Maven 中央存储库 – http://repo1.maven.org/maven2/ 查找下载。
若是中央存储库也没有找到,还可以在pom.xml中自定义远程存储库,Maven会去远程存储库下载,例如:告诉 Maven 来获得 Java.net 的依赖,你需要在 pom.xml 文件声明远程仓库:
另外由于maven中心库是国外网站,连接下载速度很是揪心,所以强烈推荐使用一些速度快的国内镜像库,如下配置是阿里云的:
<?xml version="1\.0" encoding="UTF\-8"?>
<settings xmlns="http://maven\.apache\.org/SETTINGS/1\.0\.0"
xmlns:xsi="http://www\.w3\.org/2001/XMLSchema\-instance" xsi:schemaLocation="http://maven\.apache\.org/SETTINGS/1\.0\.0 http://maven\.apache\.org/xsd/settings\-1\.0\.0\.xsd">
<localRepository>/data/repository</localRepository>
<profiles>
<profile>
<id>nexus</id>
<properties>
<maven\.compiler\.source>1\.8</maven\.compiler\.source>
<maven\.compiler\.target>1\.8</maven\.compiler\.target>
<maven\.compiler\.compilerVersion>1\.8</maven\.compiler\.compilerVersion>
</properties>
<repositories>
<repository>
<id>nexus</id>
<url>http://maven\.aliyun\.com/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>nexus</id>
<url>http://maven\.aliyun\.com/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profiles>
<activeProfiles>
<activeProfile>nexus</activeProfile>
</activeProfiles>
</settings>
如下是公司内部:192.168.40.64maven私服的
<profile>
<id>nexus</id>
<properties>
<maven\.compiler\.source>1\.8</maven\.compiler\.source>
<maven\.compiler\.target>1\.8</maven\.compiler\.target>
<maven\.compiler\.compilerVersion>1\.8</maven\.compiler\.compilerVersion>
</properties>
<repositories>
<repository>
<id>nexus</id>
<url>http://192\.168\.40\.64:8081/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>nexus</id>
<url>http://192\.168\.40\.64:8081/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>