资讯专栏INFORMATION COLUMN

【Java学习】maven的下载与环境配置

qingshanli1988 / 2249人阅读

摘要:前一小节中我们提到,解压安装包到本地之后,平行地创建一个符号链接,然后在配置环境变量时引用该符号链接,这样做是为了方便升级。

Maven概述

maven可以翻译为:专家和行家 ,将知识不断的积累,会达到专家行家的水平。
所谓maven,就是一个跨平台的项目管理工具。maven抽象了一个完整的构建生命周期模型,也就是说,从项目的搭建到发布,maven都能大显身手。
现在简要的说一下maven能干什么?maven能服务Java平台的项目构建、依赖管理、项目信息管理。

Maven的安装与配置 安装Maven

在官网下载Maven压缩包

解压到HOME目录

在/etc/profile下添加环境变量
export M2_HOME=/home/apache-maven-....
将Maven的bin目录添加到path路径:
export PATH=$M2_HOME/bin:$PATH

输入source /etc/profile

验证环境变量是否存在。
echo $M2_HOME
echo $PATH

验证Maven配置是否成功
mvn -v

安装成功,但是还没有完!要修改本地仓库,如果不修改配置的话,下载的文件都会保存在本地仓库~/.m2/repositoryMaven中。这里指定本地仓库为/home/dreamer/document/maven_local

【注】这里在实际执行的有一个小问题,之前我修改仓库的路径是:/home/document/maven_local由于没有权限去创建文件,所以每次执行mvn相关命令都是失败的。所以现在改了一个没有权限的文件夹。在文件$M2_HOME/conf/settings.xml的localRepository的开头添加一行:
/home/dreamer/document/maven_local

在最后执行一条mvn help:system,这个命令是会打印出所有的Java系统属性和环境变量,第一次执行的时候,从终端可以看出它下载了一系列文件,然后找到刚才设置的本地仓库地址,查看一下文件夹长成了这样。

一些小问题

为什么要修改默认的本地仓库呢?有什么必要性吗?

自问自答:没有什么文档说明,一定要修改默认仓库,它的默认的本地仓库的地址是:~/.m2/repository~代表的是用户文件夹,也就是home/XXX

2.在看书的时候,《maven实战》的作者这样说:

现在已经创建好了一个Maven安装目录apache-maven-3.0,虽然直接使用该目录配置环境变量之后就能使用Maven了,但这里我更推荐做法是,在安装目录旁平行地创建一个符号链接,以方便日后的升级:

juven@juven-ubuntu:bin$ ln -s apache-maven-3.0 apache-maven
juven@juven-ubuntu:bin$ ls -l
total 4
lrwxrwxrwx 1 juven juven   18 2009-09-20 15:43 apache-maven -> apache-maven-3.0
drwxr-xr-x 6 juven juven 4096 2009-09-20 15:39 apache-maven-3.0

接下来,我们需要设置M2_HOME环境变量指向符号链接apache-maven-,并且把Maven安装目录下的bin/文件夹添加到系统环境变量PATH中去:

juven@juven-ubuntu:bin$ export M2_HOME=/home/juven/bin/apache-maven
juven@juven-ubuntu:bin$ export PATH=$PATH:$M2_HOME/bin

一般来说,需要将这两行命令加入到系统的登录shell脚本中去,以我现在的Ubuntu 8.10为例,编辑~/.bashrc文件,添加这两行命令。这样,每次启动一个终端,这些配置就能自动执行。

至此,安装完成,我们可以运行以下命令检查Maven安装:

juven@juven-ubuntu:bin$ echo $M2_HOME

juven@juven-ubuntu:bin$ mvn –version


2.2.2 升级Maven

在基于Unix的系统上,可以利用符号链接这一工具来简化Maven的升级,不必像在Windows上那样,每次升级都必须更新环境变量。

前一小节中我们提到,解压Maven安装包到本地之后,平行地创建一个符号链接,然后在配置环境变量时引用该符号链接,这样做是为了方便升级。现在,假设我们需要升级到新的Maven 3.1版本,同理,将安装包解压到与前一版本平行的目录下,然后更新符号链接指向3.1版的目录便可:

juven@juven-ubuntu:bin$ rm apache-maven
juven@juven-ubuntu:bin$ ln -s apache-maven-3.1/ apache-maven
juven@juven-ubuntu:bin$ ls -l
total 8
lrwxrwxrwx 1 juven juven   17 2009-09-20 16:13 apache-maven -> apache-maven-3.1 /
drwxr-xr-x 6 juven juven 4096 2009-09-20 15:39 apache-maven-3.0drwxr-xr-x 2 juven juven 4096 2009-09-20 16:09 apache-maven-3.1

同理,可以很方便地切换到Maven的任意一个版本。现在升级完成了,可以运行mvn -v进行检查。

在这里面我有一个不理解的就是怎么在安装目录旁平行的创建一个符号链接,以便日后的升级。所以我我没有平行的创建,在这里记录一下,以后学的多了再探究。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/68703.html

相关文章

  • Maven踩过

    摘要:采用了一种被称之为概念来管理项目,所有的项目配置信息都被定义在一个叫做的文件中,通过该文件,可以管理项目的整个声明周期,包括编译,构建,测试,发布,报告等等。目前下绝大多数项目都已经采用进行管理。 前言:对于微软技术死忠的笔者来说,学习JAVA灵活又复杂的技术是件多么痛苦的事,开始想念我大微软简单的开发环境搭建以及完整详尽的开发文档,还有那一看就懂的案例教程了...可是为了工作,依旧不...

    cgspine 评论0 收藏0
  • Spring Boot学习笔记(一) 开发环境搭建

    摘要:最近因为公司业务要求,后端需要从端迁移到端。依稀记得当年框架大行其道,虽然功能强大,但单单一个的配置就让开发大为头疼。如今横空出世,成为了广大程序猿的福音。下载完成后,修改中默认的设置。服务开启后,在浏览器中输入,回车 最近因为公司业务要求,后端需要从Node端迁移到Java端。七八年前接触过一些J2EE的东西但谈不上精通,纵览目前流行的Java框架,Spring Boot成为了公司的...

    Yangyang 评论0 收藏0
  • Maven 项目构建基础

    摘要:项目构建基础从属于笔者的现代开发基础系列文章,介绍了的历史背景与多种构建工具对比,以及的基本配置安装与使用本文涉及的参考资料声明在学习与实践资料索引以及学习与资料索引。 Maven 项目构建基础从属于笔者的现代 Java 开发基础系列文章,介绍了 Maven 的历史背景与多种构建工具对比,以及 Maven 的基本配置安装与使用;本文涉及的参考资料声明在 Java 学习与实践资料索引以及...

    2501207950 评论0 收藏0
  • Maven就是这么简单

    摘要:软件项目的管理就会变得简单很多。比如说的驱动程序,,在是获取不到的,就需要手工上传到里是仓库组,在里没有这个概念,是特有的。 什么是Maven Maven是一个采用纯Java编写的开源项目管理工具, Maven采用了一种被称之为Project Object Model (POM)概念来管理项目,所有的项目配置信息都被定义在一个叫做POM.xml的文件中.. Maven是一款跨平台的项目...

    leonardofed 评论0 收藏0
  • [转载]使用IntelliJ IDEA开发SpringMVC网站(一)开发环境

    摘要:最近在做某在线教育平台网站的开发,按师兄的建议要用来搞。现在把开发过程中的一些相关经验贴出来。事先声明,请确保和都已经安装好。对于不使用的开发者,可以直接建一个简单的项目。使用的话,请按照图进行操作。 访问GitHub下载最新源码:https://github.com/gaussic/Sp... 文章已针对IDEA 2016做了一定的更新,部分更新较为重要,请重新阅读文章并下载最新源码...

    Ali_ 评论0 收藏0

发表评论

0条评论

qingshanli1988

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<