Maven 的安装和配置,快速入门

来源:互联网 发布:芝华数据 编辑:程序博客网 时间:2024/06/05 01:00

etc/environment。#Maven 简述
Maven是apache 官方推出的一款项目自动构建工具。这款工具可以方便我们项目依赖的维护,构建,测试,发布。

不同构建工具的对比

  1. Eclipse

    使用eclipse进行项目构建,相对来说,步骤比较零散,不好操作

  2. Ant

    它是一个专门的项目构建工具,它可以通过一些配置来完成项目构建,这些配置要明确的告诉ant,源码包在哪?目标class文件应该存放在哪?资源文件应该在哪

  3. Maven

    它是一个项目管理工具,他也是一个项目构建工具,通过使用maven,可以对项目进行快速简单的构建,它不需要告诉maven很多信息,但是需要安装maven去的规范去进行代码的开发。也就是说maven是有约束的。

  4. Gradle
    Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置。

可以这样说,Gradle是一款替代Maven的工具,但是Gradle 又有很多方面与Maven共用。说以学习Maven与学习Gradle不冲突,并且主流的很多企业依然在使用Maven。

Maven 的安装

官方下载的地址是下面

http://maven.apache.org/download.cgi
这里写图片描述

解压下载后的zip 包后,结构如下图所示
这里写图片描述

windows环境下的安装

配置环境变量

MAVEN_HOME,这个环境变量的变量值,是我们解压的后maven 所在的路径
这里写图片描述

配置Maven的环境变量Path路径

这个Path主要是用于指向maven.exe路径,由于我们之前配置了MAVEN_HOME环境变量,所以,在Path环境变量后面,只要追加

;%MAVEN_HOME%/bin

即可
这里写图片描述

测试maven是否安装成功

这里写图片描述

如果可以看见输出版本号,证明maven 已经安装成功了。

Linux ->Ubuntu环境下的安装方法

参考另外的一篇博客关于maven 的安装
Maven 是跨平台的,所以他在任何一个平台都是可以运行的。这里讲介绍如何在Ubuntu14上安装maven 客户端。其他linux发行版本请参照这个。大同小异。

安装Jdk1.7

与window一样,maven 以来jdk,所以必须先安装jdk之后,才可以安装maven
请参考百度经验

http://jingyan.baidu.com/article/647f0115bb26817f2048a871.html
http://www.cnblogs.com/fordreamxin/p/4287706.html(Linux下jdk版本的切换)

这里写图片描述

安装maven

安装maven 方法很简单,只需要将下载的文件解压,并设置环境变量即可
1.找到我们下载的maven
这里写图片描述

2.解压这里是使用命令行的方式解压,不懂也可以通过7zip
这里写图片描述

这里写图片描述

3.将解压后的文件夹移动到合适的位置
因为笔者习惯是将软件安装在$HOME/bin目录下,所以在
/home/blueboz/bin/目录下新建了一个Maven目录,用于存放我们的maven

blueboz@BLUEBOZ:~/下载$ mv apache-maven-3.3.9 /home/blueboz/bin/maven/

4.设置环境变量

blueboz@BLUEBOZ:~$ export M2_HOME=/home/blueboz/bin/maven/

5.在Path 环境变量中追加Mavan bin目录

blueboz@BLUEBOZ:~$ export PATH=$PATH:$M2_HOME/bin

6.检验maven是否安装成功
输入mvn -v 就可以看到Maven的版本了
这里写图片描述

注意

在如果是使用export 命令在终端进行环境变量的设置的话,会出现这样的问题,就是在系统重启之后或者新开的终端,所有的刚刚配置的环境变量都将会失效,如何解决这个问题,那么就是类似与windows,在专门配置文件中写入即可

点击参考百度经验的方法

修改系统环境变量

1.通過修改/etc/enviroment這個配置文件即可.
gedit /etc/enviroment
2.文件内容

只需要在后面添加所需要配置的环境变量信息即可
修改前

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"

修改后

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:$MAVEN_HOME/bin:$JAVA_HOME/bin"MAVEN_HOME="/user/home/blueboz/bin/maven"JAVA_HOME="/usr/lib/jvm/jdk1.8.0_121/"

修改用户环境变量

1.通过修改用户目录下的 .bashrc

这个文件,如果没有就自己新建一个就可以了.注意前面的 点不能少!

blueboz@BLUEBOZ:/etc$ gedit ~/.bashrc

Maven的常用配置信息

关于maven的配置文件,可以指定两种级别如下

  1. 用户级别, 这个settings.xml 文件为只为一个用户提供配置信息,(所谓一个用户,通常是我们正在登陆的用户。例如Administrator)并且经常放在~/.m2/settings.xml

  2. 全局级别 ,全局的settings.xml配置文件在 mavenHome目录下的/config/setting.xml 文件,也就是现在的这个我们安装maven 解压包的conf目录下。

通过在命令行模式下,输入下面指令,我已获得用户目录

echo %USERPROFILE%

配置信息详解

由于全局配置信息与单用户配置文件内容是一模一样的,所以,这里只将一种的配置方法.

全局配置信息在maven 解压目录下的conf目录下的setting.xml文件
这里写图片描述
在ubuntu下那么这个文件在$MAVEN_HOME/conf目录下的setting
这里写图片描述

打开这个配置文件,我们可以就可以进行配置了

配置文件结构

<?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>~/.m2/repository</localRepository>    <!--Maven是否与用户交互,默认值为true-->    <interactiveMode>true</interactiveMode>    <!--离线模式,默认值为false-->    <offline>false</offline>    <!--插件组-->    <pluginGroups></pluginGroups>    <!--代理-->    <proxies></proxies>    <!--下载与部署仓库的认证信息-->    <servers></servers>    <!--仓库镜像-->    <mirrors>        <mirror>            <id>bluebozRepo</id>            <mirrorOf>central</mirrorOf>            <name>Blueboz</name>                <url>http://bluebozpc:8081/repository/maven-public/</url>        </mirror>    </mirrors>    <!--Settings Profile-->s    <profiles></profiles>    <!--激活Profile-->    <activeProfiles></activeProfile></settings>

mirrors的配置

由于maven库是在国外的,在下载构建的时候速度往往比较慢.因此可以配置国内的Nexus服或者直接使用自己的私服.
下面示例alibabaNexus服

<mirrors>        <mirror>            <id>Alibaba</id>            <mirrorOf>*</mirrorOf>            <name>AliyunMaven</name>            <url>        http://maven.aliyun.com/nexus/content/groups/public/            </url>        </mirror>    </mirrors>

在示例中,mirrorOf的值为central,表示该配置为中央仓库的镜像,任何对于中央仓库的请求都会转至该镜像.另外三个元素id,name,url 与一般的仓库的配置无异,表示该镜像仓库的唯一标识.

如果mirrorOf 的值为星号.表示该配置是所有maven仓库的镜像,任何对于远程仓库的请求都会转到对应镜像.如果该仓库需要认证.那么配置一个id 为internal-repository的<server>即可.

1.<mirrorOf>*</mirrorOf>匹配所有远程仓库
2.<mirrorOf>external:*</mirrorOf>匹配所有不在本机上的的远程仓库
3.<mirrorOf>repo1,repo2</mirrorOf>匹配仓库repo1和repo2使用逗号分割多个远程仓库
4.<mirrorOf>*,!repo1</mirrorOf>匹配所有仓库,repo1除外.

Maven 命令的基本使用

使用mvn 指令创建java 项目

mvn archetype:generate -DgroupId=cn.blueboz -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

这里写图片描述

使用该指令之后生成的项目结构是

使用mvn 指令创建web项目

mvn archetype:generate -DgroupId=cn.blueboz -DartifactId=my-webapp -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false

这里写图片描述

Maven中的坐标和依赖

持续更新中,暂时更新至20170318

1 0
原创粉丝点击