烂泥:依赖管理maven3.3安装与配置

本文由ilanniweb提供友情赞助,首发于烂泥行天下

想要获得更多的文章,可以关注我的微信ilanniweb

目前流行的java项目依赖管理有三个,分别是ant、maven、gradle。目前ant已经逐渐不被使用,现在java项目依赖管理最流行的的就是maven。

本篇文章我们来介绍下,有关maven3.3的安装、配置与简易使用。

一、jdk安装与配置

maven的运行是需要jdk支持的,而maven3.3必须使用jdk1.7以上版本才能运行。maven官网也有相关的要求,如下:

clip_image001

下载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/

clip_image002

把jdk加入系统环境变量中,如下:

vim /etc/profile

export JAVA_HOME=/usr/local/jdk1.7.0_80

export PATH=$PATH:$JAVA_HOME/bin

clip_image003

使jdk环境变量生效,如下:

source /etc/profile

java –version

clip_image004

二、下载安装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

clip_image005

把maven加入系统的环境变量中,如下:

vim /etc/profile

export M2_HOME=/usr/local/maven/

export PATH=$PATH:/usr/local/mysql/bin:$M2_HOME/bin

clip_image006

使maven环境变量生效,如下:

source /etc/profile

java –version

mvn –v

clip_image007

通过上图,我们可以很容易的看到maven已经安装成功了。

三、配置settings.xml文件与简易实例

Maven的settings.xml文件牵涉到的内容比较多,在此我们只进行简单的介绍。

3.1 配置settings.xml文件

Maven安装完毕后,我们可以来查看maven的配置文件settings.xml,在conf目录下,如下:

vim conf/settings.xml

clip_image008

我们可以不修改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

clip_image009

通过上图,我们可以很明显的看出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

clip_image010

clip_image011

通过上图,我们可以很明显的看到jetty已经编译、打包成功。打包后生成的文件存放在jetty-distribution/target目录下,而且我们可以看到打包后有tar.gz和zip两个压缩包。

四、配置pom.xml文件

pom.xml文件不是在maven的程序目录的,而是在项目中配置的,该pom.xml文件一般是在项目的根目录下。

当然如果该项目还有子模块的话,每个子模块也有自己的pom.xml文件。比如jetty的源码根目录下pom.xml文件中,就有定义需要依赖的子模块,如下:

clip_image012

而每个子模块也确实有自己的pom.xml文件,如下:

clip_image013

pom.xml一般是开发人员在进行代码编译时,已经编写好了,存放在项目的根目录下。

在pom.xml文件中,定义了项目编译时需要的依赖,以及打包等等相关的其他信息。因为pom.xml文件中牵涉到的东西太多了,所以在此我们就不一一进行讲解。

但是有关pom.xml中使用依赖,可以看下《烂泥:maven私库nexus2.14.1迁移到nexus3.1》这篇文章的第1.4章节。

未经允许不得转载:烂泥行天下 » 烂泥:依赖管理maven3.3安装与配置

赞 (4)