Devops(一):CentOS7 安装Maven3.6.1详解
https://yq.aliyun.com/topic/78?spm=5176.8290451.656547.7.rMYhAF
https://yq.aliyun.com/activity/155?utm_campaign=155&utm_medium=images&utm_source=cnblogs&utm_content=m_11258#guid-656547
Maven用来做什么?
Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。当你使用Maven的时候,你用一个明确定义的项目对象模型来描述你的项目,然后Maven可以应用横切的逻辑,这些逻辑来自一组共享的(或者自定义的)插件。
Maven 有一个生命周期,当你运行 mvn install 的时候被调用。这条命令告诉 Maven 执行一系列的有序的步骤,直到到达你指定的生命周期。遍历生命周期旅途中的一个影响就是,Maven 运行了许多默认的插件目标,这些目标完成了像编译和创建一个 JAR 文件这样的工作。
此外,Maven能够很方便的帮你管理项目报告,生成站点,管理JAR文件,等等。
Maven安装
安装环境为 centos7,jdk1.8
1)从Maven官网下载Maven安装包
官网下载maven地址:http://maven.apache.org/download.cgi

复制的apache-maven-3.6.1.tar.gz的下载地址为:http://mirror.bit.edu.cn/apache/maven/maven-3/3.6.1/binaries/apache-maven-3.6.1-bin.tar.gz
在centos7系统中使用root账户执行wget来下载maven 3.6.1安装包:
[root@master ~]# mkdir -p /opt/devopt/maven
[root@master ~]# cd /opt/devopt/maven
[root@master maven]# wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.6.1/source/apache-maven-3.6.1-bin.tar.gz
--2019-08-21 22:41:00-- http://mirror.bit.edu.cn/apache/maven/maven-3/3.6.1/source/apache-maven-3.6.1-bin.tar.gz
Resolving mirror.bit.edu.cn (mirror.bit.edu.cn)... 114.247.56.117, 2001:da8:204:1::22
Connecting to mirror.bit.edu.cn (mirror.bit.edu.cn)|114.247.56.117|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2019-08-21 22:41:03 ERROR 404: Not Found.
[root@master maven]# wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.6.1/binaries/apache-maven-3.6.1-bin.tar.gz
--2019-08-21 22:42:07-- http://mirror.bit.edu.cn/apache/maven/maven-3/3.6.1/binaries/apache-maven-3.6.1-bin.tar.gz
Resolving mirror.bit.edu.cn (mirror.bit.edu.cn)... 114.247.56.117, 2001:da8:204:1::22
Connecting to mirror.bit.edu.cn (mirror.bit.edu.cn)|114.247.56.117|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 9136463 (8.7M) [application/octet-stream]
Saving to: ‘apache-maven-3.6.1-bin.tar.gz’
100%[=================================================================================================================================================================>] 9,136,463 54.3KB/s in 5m 23s
2019-08-21 22:47:30 (27.6 KB/s) - ‘apache-maven-3.6.1-bin.tar.gz’ saved [9136463/9136463]
[root@master maven]# ls
apache-maven-3.6.1-bin.tar.gz
2)解压下载的maven文件进行安装
[root@master maven]# ls
apache-maven-3.6.1-bin.tar.gz
[root@master maven]# tar -zxvf apache-maven-3.6.1-bin.tar.gz
apache-maven-3.6.1/README.txt
apache-maven-3.6.1/LICENSE
apache-maven-3.6.1/NOTICE
apache-maven-3.6.1/lib/
apache-maven-3.6.1/lib/slf4j-api.license
apache-maven-3.6.1/lib/checker-compat-qual.license
apache-maven-3.6.1/lib/jsr250-api.license
apache-maven-3.6.1/lib/jcl-over-slf4j.license
apache-maven-3.6.1/lib/org.eclipse.sisu.plexus.license
apache-maven-3.6.1/lib/animal-sniffer-annotations.license
apache-maven-3.6.1/lib/org.eclipse.sisu.inject.license
apache-maven-3.6.1/lib/jansi-native/
apache-maven-3.6.1/lib/jansi-native/freebsd64/
apache-maven-3.6.1/lib/jansi-native/osx/
apache-maven-3.6.1/lib/jansi-native/windows32/
apache-maven-3.6.1/lib/jansi-native/linux32/
apache-maven-3.6.1/lib/jansi-native/freebsd32/
apache-maven-3.6.1/lib/jansi-native/windows64/
apache-maven-3.6.1/lib/jansi-native/linux64/
apache-maven-3.6.1/lib/jansi-native/freebsd64/libjansi.so
apache-maven-3.6.1/lib/jansi-native/osx/libjansi.jnilib
apache-maven-3.6.1/lib/jansi-native/windows32/jansi.dll
apache-maven-3.6.1/lib/jansi-native/linux32/libjansi.so
apache-maven-3.6.1/lib/jansi-native/freebsd32/libjansi.so
apache-maven-3.6.1/lib/jansi-native/windows64/jansi.dll
apache-maven-3.6.1/lib/jansi-native/linux64/libjansi.so
apache-maven-3.6.1/bin/mvn.cmd
apache-maven-3.6.1/bin/m2.conf
apache-maven-3.6.1/bin/mvnDebug.cmd
apache-maven-3.6.1/bin/mvnDebug
apache-maven-3.6.1/bin/mvn
apache-maven-3.6.1/bin/mvnyjp
apache-maven-3.6.1/conf/
apache-maven-3.6.1/conf/logging/
apache-maven-3.6.1/conf/settings.xml
apache-maven-3.6.1/conf/toolchains.xml
apache-maven-3.6.1/conf/logging/simplelogger.properties
apache-maven-3.6.1/lib/ext/
apache-maven-3.6.1/lib/jansi-native/
apache-maven-3.6.1/lib/ext/README.txt
apache-maven-3.6.1/lib/jansi-native/README.txt
apache-maven-3.6.1/boot/plexus-classworlds-2.6.0.jar
apache-maven-3.6.1/lib/maven-embedder-3.6.1.jar
apache-maven-3.6.1/lib/maven-settings-3.6.1.jar
apache-maven-3.6.1/lib/plexus-utils-3.2.0.jar
apache-maven-3.6.1/lib/maven-settings-builder-3.6.1.jar
apache-maven-3.6.1/lib/maven-builder-support-3.6.1.jar
apache-maven-3.6.1/lib/plexus-interpolation-1.25.jar
apache-maven-3.6.1/lib/plexus-component-annotations-1.7.1.jar
apache-maven-3.6.1/lib/plexus-sec-dispatcher-1.4.jar
apache-maven-3.6.1/lib/plexus-cipher-1.7.jar
apache-maven-3.6.1/lib/maven-core-3.6.1.jar
apache-maven-3.6.1/lib/maven-model-3.6.1.jar
apache-maven-3.6.1/lib/maven-repository-metadata-3.6.1.jar
apache-maven-3.6.1/lib/maven-artifact-3.6.1.jar
apache-maven-3.6.1/lib/commons-lang3-3.8.1.jar
apache-maven-3.6.1/lib/maven-plugin-api-3.6.1.jar
apache-maven-3.6.1/lib/org.eclipse.sisu.plexus-0.3.3.jar
apache-maven-3.6.1/lib/cdi-api-1.0.jar
apache-maven-3.6.1/lib/jsr250-api-1.0.jar
apache-maven-3.6.1/lib/javax.inject-1.jar
apache-maven-3.6.1/lib/org.eclipse.sisu.inject-0.3.3.jar
apache-maven-3.6.1/lib/maven-model-builder-3.6.1.jar
apache-maven-3.6.1/lib/maven-resolver-provider-3.6.1.jar
apache-maven-3.6.1/lib/maven-resolver-api-1.3.3.jar
apache-maven-3.6.1/lib/maven-resolver-spi-1.3.3.jar
apache-maven-3.6.1/lib/maven-resolver-util-1.3.3.jar
apache-maven-3.6.1/lib/maven-resolver-impl-1.3.3.jar
apache-maven-3.6.1/lib/slf4j-api-1.7.25.jar
apache-maven-3.6.1/lib/maven-shared-utils-3.2.1.jar
apache-maven-3.6.1/lib/commons-io-2.5.jar
apache-maven-3.6.1/lib/guice-4.2.1-no_aop.jar
apache-maven-3.6.1/lib/aopalliance-1.0.jar
apache-maven-3.6.1/lib/guava-25.1-android.jar
apache-maven-3.6.1/lib/jsr305-3.0.2.jar
apache-maven-3.6.1/lib/checker-compat-qual-2.0.0.jar
apache-maven-3.6.1/lib/error_prone_annotations-2.1.3.jar
apache-maven-3.6.1/lib/j2objc-annotations-1.1.jar
apache-maven-3.6.1/lib/animal-sniffer-annotations-1.14.jar
apache-maven-3.6.1/lib/commons-cli-1.4.jar
apache-maven-3.6.1/lib/maven-compat-3.6.1.jar
apache-maven-3.6.1/lib/wagon-provider-api-3.3.2.jar
apache-maven-3.6.1/lib/wagon-http-3.3.2-shaded.jar
apache-maven-3.6.1/lib/jcl-over-slf4j-1.7.25.jar
apache-maven-3.6.1/lib/wagon-file-3.3.2.jar
apache-maven-3.6.1/lib/maven-resolver-connector-basic-1.3.3.jar
apache-maven-3.6.1/lib/maven-resolver-transport-wagon-1.3.3.jar
apache-maven-3.6.1/lib/maven-slf4j-provider-3.6.1.jar
apache-maven-3.6.1/lib/jansi-1.17.1.jar
[root@master maven]# ls
apache-maven-3.6.1 apache-maven-3.6.1-bin.tar.gz
[root@master maven]# cd apache-maven-3.6.1
[root@master apache-maven-3.6.1]# ls
bin boot conf lib LICENSE NOTICE README.txt
[root@master apache-maven-3.6.1]# cd conf/
[root@master conf]# ls
logging settings.xml toolchains.xml
[root@master conf]#
3)添加Maven_Home环境变量,并验证
1)vim /etc/profile
在/etc/profile最后追加Maven_Home,并追加到Path中:
[root@master apache-maven-3.6.]# vim /etc/profile
。。。
export WORK_SPACE=/opt/
export JAVA_HOME=$WORK_SPACE/jdk1..0_171
export JRE_HOME=/opt/jdk1..0_171/jre
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib export SCALA_HOME=$WORK_SPACE/scala-2.11.
export PATH=$PATH:$SCALA_HOME/bin export MAVEN_HOME=/opt/devops/maven/apache-maven-3.6.
export PATH=$PATH:$MAVEN_HOME/bin
"/etc/profile" 98L, 2475C written
[root@master apache-maven-3.6.]#
2)运行source /etc/profile使其生效
[root@master apache-maven-3.6.]# source /etc/profile
[root@master apache-maven-3.6.]#
3)运行mvn -version验证生效
[root@master conf]# mvn -v
Apache Maven 3.6.1 (d66c9c0b3152b2e69ee9bac180bb8fcc8e6af555; 2019-04-05T03:00:29+08:00)
Maven home: /opt/devops/maven/apache-maven-3.6.1
Java version: 1.8.0_171, vendor: Oracle Corporation, runtime: /opt/jdk1.8.0_171/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-862.el7.x86_64", arch: "amd64", family: "unix"
[root@master conf]# cd ~
[root@master ~]# mvn -v
Apache Maven 3.6.1 (d66c9c0b3152b2e69ee9bac180bb8fcc8e6af555; 2019-04-05T03:00:29+08:00)
Maven home: /opt/devops/maven/apache-maven-3.6.1
Java version: 1.8.0_171, vendor: Oracle Corporation, runtime: /opt/jdk1.8.0_171/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-862.el7.x86_64", arch: "amd64", family: "unix"
[root@master ~]#
配置远程中央仓库:
一般情况下可以配置为国外的远程中央仓库,但是在国内从国外远程中央仓库下载jar包的速度比较差。如果国内的话,建议使用阿里的远程中央仓库(下载速度快)。
vi /opt/devops/maven/apache-maven-3.6.1/conf/settings.xml
在mirrors标签下添加:
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
配置后效果:

Devops(一):CentOS7 安装Maven3.6.1详解的更多相关文章
- CentOS7安装Oracle 11gR2 图文详解
注:Oracle11gR2 X64安装 一.环境准备 安装包: 1.VMware-workstation-full-11.1.0-2496824.exe 2.CentOS-7-x86_64-DVD-1 ...
- Linux centos7环境下安装JDK的步骤详解
Linux centos7环境下安装JDK的步骤详解 测试root用户下JAVA版本 输入命令: java –version 1.先到Oracle官网里下载好jdk,网址如下: http://ww ...
- Linux centos7环境下安装MySQL的步骤详解
Linux centos7环境下安装MySQL的步骤详解 安装MySQL mysql 有两个跟windows不同的地方 1).my.ini 保存到/etc/my.ini 2).用户权限,单独用户执行 ...
- Centos7 配置网络步奏详解
Centos7 配置网络步奏详解 编辑网卡配置文件 vi /etc/sysconfig/network-script/ifcfg-ens01 备注:这里的ens01不是所有系统都叫这个,有的可能叫其他 ...
- Python安装、配置图文详解(转载)
Python安装.配置图文详解 目录: 一. Python简介 二. 安装python 1. 在windows下安装 2. 在Linux下安装 三. 在windows下配置python集成开发环境(I ...
- Windows-008-VirtualBox 安装 Win7 前沿配置详解
此文主要讲述在 Windows 系统下安装虚拟机 VirtualBox,及用 VirtualBox 安装 Win7 Professional 64bit 操作系统的前沿配置为例,配以图文进行详细的讲解 ...
- webpack安装配置使用教程详解
webpack安装配置使用教程详解 www.111cn.net 更新:2015-09-01 编辑:swteen 来源:转载 本文章来为各位详细的介绍一下关于webpack安装配置使用教程吧,这篇文章对 ...
- 【和我一起学python吧】Python安装、配置图文详解
Python安装.配置图文详解 目录: 一. Python简介 二. 安装python 1. 在windows下安装 2. 在Linux下安装 三. 在windows下配置python集成开发环境( ...
- MySQL高可用架构之Mycat-关于Mycat安装和参数设置详解
MySQL高可用架构之Mycat-关于Mycat安装和参数设置详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Mycat介绍 1>.什么是Mycat Mycat背后是 ...
随机推荐
- JavaScript基本使用
基本使用 1.JavaScript组成 ECMAScript+BOM+DOM BOM的思想(重点) DOM的思想(重点) 2.使用<script></script>标签 doc ...
- 调查问卷WebApp
1. 效果演示 2. 主要知识点 使用slot分发内容 动态组件 组件通信 实例的生命周期 表单 3. 遇到的问题 bus 通信 第一次 $on 监听不到 // 解决bus 第一次通信 $on 监听不 ...
- 这些JVM命令配置参数你知道吗?
JVM是多数开发人员视为理所当然的Java功能和性能背后的重负荷机器.然而,我们很少有人能理解JVM是如何进行工作的—像任务分配和垃圾收集.转动线程.打开和关闭文件.中断和/或JIT编译Java字节码 ...
- ST3 C程序自动补全
参考: http://www.cnblogs.com/heleifz/p/3404600.html http://www.cnblogs.com/By-ruoyu/p/4687196.html htt ...
- QT学习之路DAY1之初学QT的小项目
以下所有代码均利用软件QT5编写 项目一:Hello world! 利用QTcreator创建项目 修改main.cpp代码为 #include "mainwindow.h" #i ...
- delphi Tidhttp 发送json格式报文
type TwmsThreadpostJson = class(TThread) private Furl: string; Fpostcmd: string; FResult: string; FB ...
- Map的使用及遍历方式
Java中Map遍历的四种方式 如果同时需要key和value推荐使用entrySet(第一种): 如果只是获取key,或者value,推荐使用keySet或者values方式(第二种): 如果需要在 ...
- [2019HDU多校第一场][HDU 6578][A. Blank]
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6578 题目大意:长度为\(n\)的数组要求分别填入\(\{0,1,2,3\}\)四个数中的任意一个,有 ...
- MySQL剖析单条查询
使用SHOW PROFILE SHOW PROFILE命令默认是禁用的,可以通过以下命令修改 SET profiling=1; 当一条查询提交给服务器时,,此工具会记录剖析信息到一张临时表,并且给查询 ...
- 使用Joda-Time优雅的处理日期时间(转)
简介 在Java中处理日期和时间是很常见的需求,基础的工具类就是我们熟悉的Date和Calendar,然而这些工具类的api使用并不是很方便和强大,于是就诞生了Joda-Time这个专门处理日期时间的 ...