本文由ilanniweb提供友情赞助,首发于烂泥行天下
想要获得更多的文章,可以关注我的微信ilanniweb
目前流行的java项目依赖管理有三个,分别是ant、maven、gradle。目前ant已经逐渐不被使用,现在java项目依赖管理最流行的的就是maven。
本篇文章我们来介绍下,有关maven3.3的安装、配置与简易使用。
一、jdk安装与配置
maven的运行是需要jdk支持的,而maven3.3必须使用jdk1.7以上版本才能运行。maven官网也有相关的要求,如下:
下载jdk版本,并安装,如下:
wget http://mirrors.linuxeye.com/jdk/jdk-7u80-linux-x64.tar.gz
tar -xf jdk-7u80-linux-x64.tar.gz -C /usr/local/
chown root:root -R /usr/local/jdk1.7.0_80/
把jdk加入系统环境变量中,如下:
vim /etc/profile
export JAVA_HOME=/usr/local/jdk1.7.0_80
export PATH=$PATH:$JAVA_HOME/bin
使jdk环境变量生效,如下:
source /etc/profile
java –version
二、下载安装maven
jdk基础环境配置完毕后,我们现在来开始下载maven3.3,然后进行安装,如下:
wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
tar -xf apache-maven-3.3.9-bin.tar.gz -C /usr/local/
cd /usr/local/
mv apache-maven-3.3.9 maven
把maven加入系统的环境变量中,如下:
vim /etc/profile
export M2_HOME=/usr/local/maven/
export PATH=$PATH:/usr/local/mysql/bin:$M2_HOME/bin
使maven环境变量生效,如下:
source /etc/profile
java –version
mvn –v
通过上图,我们可以很容易的看到maven已经安装成功了。
三、配置settings.xml文件与简易实例
Maven的settings.xml文件牵涉到的内容比较多,在此我们只进行简单的介绍。
3.1 配置settings.xml文件
Maven安装完毕后,我们可以来查看maven的配置文件settings.xml,在conf目录下,如下:
vim conf/settings.xml
我们可以不修改maven的配置文件settings.xml,直接使用。
但是你会发现在进行编译、构建时,Maven会从maven的官方仓库下载相关的依赖。由于众所周知的原因,这些依赖下载很慢。下面以jetty的源码为例,如下:
https://github.com/eclipse/jetty.project
wget https://github.com/eclipse/jetty.project/archive/jetty-9.4.0.v20161208.tar.gz
tar -xf jetty.project-jetty-9.4.0.v20161208.tar.gz
cd jetty.project-jetty-9.4.0.v20161208
mvn install clean
通过上图,我们可以很明显的看出jetty在进行源码编译时,直接从maven的官方仓库下载相关依赖的。
关于从maven官方仓库下载依赖比较慢的问题,我们会在下一章节中使用本地的maven仓库进行解决。
maven的settings.xml文件中选项比较多,在此我们进行简单的介绍几个:
localRepository:定义本地下载依赖后存储的位置。
Proxies:定义maven下载远程依赖仓库时需要的代理。
Mirrors:定义maven镜像远程依赖仓库,为仓库列表配置的下载镜像列表。
Servers:定义配置服务端的一些设置。
Profiles:根据环境参数来调整构建配置的列表。
pluginRepositories:插件仓库相关的配置。
在settings.xml文件中,会定义和maven仓库以及上传war和jar相关的用户名和密码等,其他详细的定义信息会在pom.xml文件中进行定义。
3.2 简单settings.xml实例
关于settings.xml文件的简单配置,在此我们是以jetty的源码为例。
vim settings.xml
<mirrors>
<mirror>
<id>ilannimaven</id>
<name>ilanni maven</name>
<url>http://192.168.1.232:8081/repository/ilannicentral/</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>
settings.xml文件在此,我们只配置了mirror镜像列表中的有关central中央仓库的地址。其他的暂时保持默认不变。
其中http://192.168.1.232:8081/repository/ilannicentral/是我们代理远程maven的central中央仓库地址。
下面是我们编译、打包jetty的过程,如下:
mvn clean install -Dmaven.test.skip=true
通过上图,我们可以很明显的看到jetty已经编译、打包成功。打包后生成的文件存放在jetty-distribution/target目录下,而且我们可以看到打包后有tar.gz和zip两个压缩包。
四、配置pom.xml文件
pom.xml文件不是在maven的程序目录的,而是在项目中配置的,该pom.xml文件一般是在项目的根目录下。
当然如果该项目还有子模块的话,每个子模块也有自己的pom.xml文件。比如jetty的源码根目录下pom.xml文件中,就有定义需要依赖的子模块,如下:
而每个子模块也确实有自己的pom.xml文件,如下:
pom.xml一般是开发人员在进行代码编译时,已经编写好了,存放在项目的根目录下。
在pom.xml文件中,定义了项目编译时需要的依赖,以及打包等等相关的其他信息。因为pom.xml文件中牵涉到的东西太多了,所以在此我们就不一一进行讲解。
但是有关pom.xml中使用依赖,可以看下《烂泥:maven私库nexus2.14.1迁移到nexus3.1》这篇文章的第1.4章节。
未经允许不得转载:烂泥行天下 » 烂泥:依赖管理maven3.3安装与配置