Maven(mvn)是基于项目对象模型(POM project object model),可以通过一小段描述信息(配置)来管理项目的构建,报告和文档的软件项目管理工具(百度百科)

简单理解为一个打包工具,其他的打包工具比如gradle也很火,常用于与jenkins等代码发布平台的联合代码发布

本文主要介绍linux下的maven的安装方法

============ 完美的分割线 =============

1.准备工作

1)maven的安装运行以来Java环境,需要预先安装,具体Java安装方法可以参考我的另一篇博文:

linux下yum安装jdk1.8(rpm包)和tomcat-8.5

2)maven软件包下载地址:

https://mirrors.cnnic.cn/apache/maven/

3)本教程适用于以下系统环境
CentOS6.9_x64
CentOS7.5_x64

2.安装maven

1)下载软件包

# 20180921最新安装包版本3.5.4,下载二进制包,解压即可使用

mkdir -p /server/tools
cd /server/tools/
wget https://mirrors.cnnic.cn/apache/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz --no-check-certificate

2)解压安装maven软件包

tar -xf apache-maven-3.5.4-bin.tar.gz
mv apache-maven-3.5.4 /usr/local/maven
ln -s /usr/local/maven/bin/mvn /usr/bin/mvn    # 与jenkins联合使用时,jenkins会到/usr/bin/下找mvn命令,如果没有回报错
ll /usr/local/maven/
ll /usr/bin/mvn

3)配置环境变量

echo " ">>/etc/profile
echo "# Made for mvn env by zhaoshuai on $(date +%F)">>/etc/profile
echo 'export MAVEN_HOME=/usr/local/maven'>>/etc/profile
echo 'export PATH=$MAVEN_HOME/bin:$PATH'>>/etc/profile
tail -4 /etc/profile
source /etc/profile
echo $PATH

4)查看安装的mvn版本号

which mvn
mvn -version

最后可以看到以下结果

[root@CentOS75 conf]# which mvn      # 查看mvn工具的位置/usr/local/maven/bin/mvn
[root@CentOS75 conf]# mvn -version    # 查看maven版本
Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-18T02:33:14+08:00)
Maven home: /usr/local/maven
Java version: 1.8.0_181, vendor: Oracle Corporation, runtime: /usr/java/jdk1.8.0_181-amd64/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-862.11.6.el7.x86_64", arch: "amd64", family: "unix"

至此maven安装完成,可以使用mvn工具打包代码。

在首次使用mvn工具时会到maven.apache.org下载相关依赖包,不过速度较慢,
一般我们会设置私有库,比如使用nexus安装私有库提供依赖包,这部分需要和开发人员合作进行配置,本文暂略

3.配置maven私有库

# 编辑maven配置文件修改私有库的配置

cd /usr/local/maven/conf/
cp settings.xml settings.xml.ori
vim /usr/local/maven/conf/settings.xml
--------- setting标签里设置本地仓库的存储位置 ----------
<localRepository>/usr/local/maven/mavenlib</localRepository>
---------- mirror标签里配置Maven 镜像地址 --------------
<mirror>
<id>nexus</id>
<mirrorOf>*</mirrorOf>
<name>mynexus</name>
<url>http://192.168.1.9:18081/repository/maven-public/</url>
</mirror>
------------------- 配置私服地址 ---------------------
<profile>
<id>nexus</id>
<repositories>
<repository>
<id>nexus</id>
<name>Nexus</name>
<url>http://192.168.1.9:18081/repository/maven-public/</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>nexus</id>
<name>Nexus</name>
<url>http://192.168.1.9:18081/repository/maven-public/</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
------------------------------------------------

代码里面有很多东西是需要拉去依赖包,这些依赖包就存放在本地的私有仓库里(Nexus)

=============  完毕,呵呵呵呵  ==============

Linux下安装maven(mvn命令)的更多相关文章

  1. windows/Linux下安装maven

    Linux下安装maven 1.首先到Maven官网下载安装文件,目前最新版本为3.0.3,下载文件为apache-maven-3.3.9-bin.tar.gz,下载可以使用wget命令: 2.进入下 ...

  2. Linux下安装maven和nexus

    Linux下安装maven1.首先到Maven官网下载安装文件,目前最新版本为3.0.3,下载文件为apache-maven-3.0.3-bin.tar.gz,下载可以使用wget命令: 2.进入下载 ...

  3. Linux下安装maven-及常用命令

        Linux下安装maven1.首先到Maven官网下载安装文件,目前最新版本为3.0.3,下载文件为apache-maven-3.0.3-bin.tar.gz,下载可以使用wget命令: 2. ...

  4. 【Maven】解决linux下安装maven update-alternative --display mvn链接层数过多

    问题描述: 今天首次在linux上安装配置maven,编辑/etc/profile 配置好环境变量之后 使用mvn -v 显示出mvn配置信息,此时以为可以顺利的构建maven项目. 结果中间构建时, ...

  5. Linux下安装maven

    1.首先到Maven官网下载安装文件,目前最新版本为3.0.3,下载文件为apache-maven-3.0.3-bin.tar.gz,下载可以使用wget命令: 2.进入下载文件夹,找到下载的文件,运 ...

  6. Linux 下安装maven

    1.首先到Maven官网下载安装文件,目前最新版本为3.0.3,下载文件为apache-maven-3.0.3-bin.tar.gz,下载可以使用wget命令:2.进入下载文件夹,找到下载的文件,运行 ...

  7. linux 下安装 RZ SZ命令 以及使用

    对于经常使用Linux系统的人员来说,少不了将本地的文件上传到服务器或者从服务器上下载文件到本地,rz / sz命令很方便的帮我们实现了这个功能,rz是把win的文件上传到linux上    sz是吧 ...

  8. LINUX下安装软件方法命令方法

    1.通常Linux应用软件的安装包有三种: 1) tar包,如software-1.2.3-1.tar.gz.它是使用UNIX系统的打包工具tar打包的. 2) rpm包,如software-1.2. ...

  9. linux下安装maven私服nexus

    Nexus介绍 Nexus 是Maven仓库管理器,如果你使用Maven,你可以从Maven中央仓库 下载所需要的构件(artifact),但这通常不是一个好的做法,你应该在本地架设一个Maven仓库 ...

随机推荐

  1. heckboxlist详细用法、checkboxlist用法、checkboxlist

    heckboxlist详细用法.checkboxlist用法.checkboxlist for (int i = 0; i < CheckBoxList1.Items.Count; i++) { ...

  2. python设计模式之门面模式

    一.结构型设计模式 门面模式与单例模式,工厂模式不同,它是一种结构型模式. 结构型模式描述如何将对象和类组合成更大的结构 结构型模式是一种能够简化设计工作的模式,它能找出更简单的方法来认识或表示实体之 ...

  3. 汇编语言debug命令与指令机器码

    一.debug命令 二.标志信息 -r用这个指令,得到的信息右下角: NV UP EI PL NZ NA PO NC 这些符号代表的就是标志寄存器里常用标志位的值.这个是符号值对应表: 溢出标志OF( ...

  4. 写博的第一天 0x00

    作为一个大学生,我觉得自己除了睡觉,打游戏,吃饭更应该做点有意义的事情,作为计算机专业的学生,更应该勤奋点,主动去学习.已经要大三了,我认识到这个暑假我必须学点什么了,为了更好的学习,我决定学语言的同 ...

  5. SDN第五次上机作业--基于组表的简单负载均衡

    0.作业链接 http://www.cnblogs.com/easteast/p/8125383.html 1.实验目的 1.搭建如下拓扑并连接控制器 2.下发相关流表和组表实现负载均衡 3.抓包分析 ...

  6. 【Python】新建自定义个数的自定义长度名字

    # -*- coding:utf-8 -*- import random def CreateRandomName(number,length): """ :param ...

  7. C#中抽象类(abstract)和接口(interface)的实现

    抽象类 抽象方法是没有代码实现的方法,使用abstract关键字修饰: 抽象类是包含0到多个抽象方法的类,其不能实例化.含有抽象方法的类必须是抽象类,抽象类中也可以包含非抽象方法: 重写抽象类的方法用 ...

  8. Odoo开发调试技巧

    转载请注明原文地址:https://www.cnblogs.com/cnodoo/p/9307490.html  一:Odoo控制台error日志一般为以下格式 Traceback (most rec ...

  9. Locust环境搭建及应用-hc课堂笔记

    Locust环境搭建: 1,在命令窗口中,进入到python项目路径,如:d:\Pycharmproject\venv\Scripts 2,执行Scripts下的active.bat,进入到虚拟环境 ...

  10. OpenCV (C++) 几何形状识别(面积过滤、横纵比过滤等等)

    #include <opencv2/opencv.hpp> #include <iostream> #include <math.h> using namespac ...