Maven环境变量配置

配置Maven前先从官网下载相关版本,Maven下载地址:http://maven.apache.org/download.cgi,笔者使用最新版本apache-maven-3.5.0.

配置Maven前须确保已安装Java运行环境,因为Maven基于Java开发,其运行依赖于Java,Java安装配置请参考相关教程。

Windows下环境变量配置

依次打开 我的电脑->高级系统设置->环境变量

设置参数如下:

  1. MAVEN_HOME: D:\soft\java\develop\plugins\apache-maven-3.5.0
  2. PATH: %MAVEN_HOME%\bin
  3. MAVEN_OPTS :-Xms128m -Xmx512m

目录改为maven本地解压路径。

确保配置无误后,win+R 打开终端窗口,输入:

  1. mvn -version

若配置正确,会出现Maven相关信息:

  1. Apache Maven 3.5.0 (ff8f5e7444045639af65f6095c62210b5713f426; 2017-04-04T03:39:0
  2. 6+08:00)
  3. Maven home: D:\soft\java\develop\plugins\apache-maven-3.5.0\bin\..
  4. Java version: 1.7.0_80, vendor: Oracle Corporation
  5. Java home: C:\Program Files\Java\jdk1.7.0_80\jre
  6. Default locale: zh_CN, platform encoding: GBK
  7. OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"

Linux下环境变量配置

下载解压Maven到相关目录,配置环境变量:

  1. vim /etc/profile

在profile文件中添加相关配置:

  1. export M2_HOME=/home/soft/apache-maven
  2. export PATH=$PATH:$M2_HOME/bin
  3. export MAVEN_OPTS="-Xms256m -Xmx512m"

保存退出编辑。

打开终端窗口输入如下命令使配置生效:

  1. source /etc/profile

终端窗口输入:mvn -version 会出现maven相关信息:

  1. Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-10T08:41:47-08:00)
  2. Maven home: /home/soft/apache-maven
  3. Java version: 1.8.0_131, vendor: Oracle Corporation
  4. Java home: /usr/java/jdk1.8.0_131/jre
  5. Default locale: zh_CN, platform encoding: UTF-8
  6. OS name: "linux", version: "3.10.0-123.9.3.el7.x86_64", arch: "amd64", family: "unix"

修改Maven本地仓库存放位置:

若不修改Maven本地仓库位置,默认保存在${user.home}/.m2/repository目录下,如:

  1. C:\Users\Administrator\.m2\repository

若要保存到本地其他目录,需修改Maven配置文件,Maven路径下/conf/settings.xml

  1. <!-- localRepository
  2. | The path to the local repository maven will use to store artifacts.
  3. |
  4. | Default: ${user.home}/.m2/repository
  5. <localRepository>/path/to/local/repo</localRepository>
  6. -->

现在把本地仓库改为D:/develop/m2/repository,修改后配置文件为:

  1. <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  2. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  4. <!-- localRepository
  5. | The path to the local repository maven will use to store artifacts.
  6. |
  7. | Default: ${user.home}/.m2/repository
  8. <localRepository>/path/to/local/repo</localRepository>
  9. -->
  10. <localRepository>D:/develop/m2/repository</localRepository>

Maven相关命令

使用Maven快速创建项目

打开终端,切换到相关目录,输入一下命令:

  1. mvn archetype:generate

该命令使用交互式创建项目。创建过程中,需用户输入groupId,artifactId等内容。可使用非交互式创建,命令如下:

  1. mvn archetype:generate
  2. -DgroupId=com.turing.app
  3. -DartifactId=maven-demo
  4. -DarchetypeArtifactId=maven-archetype-quickstart
  5. -DinteractiveMode=false

若快速创建web项目,只需修改DarchetypeArtifactId为'-DarchetypeArtifactId=maven-archetype-webapp'

说明

  • groupId:工程组的标识。它在一个组织或者项目中通常是唯一的。
  • artifactId: 工程的标识。它通常是工程的名称。
节点 描述
groupId 这是工程组的标识。它在一个组织或者项目中通常是唯一的。例如,一个银行组织com.company.bank拥有所有的和银行相关的项目。
artifactId 这是工程的标识。它通常是工程的名称。例如,消费者银行。groupId和artifactId一起定义了artifactId在仓库中的位置。
version 这是工程的版本号。在artifact的仓库中,它用来区分不同的版本。例如:com.company.bnak:consumer-banking:1.0 com.company.bank:consumer-banking:1.1

详见pom.xml相关配置。

清除并生成eclipse项目结构

  1. mvn eclipse:eclipse // 将maven项目变成eclipse,其实是在项目中生成 .project 和 .classpath 两个文件
  2. mvn eclipse:clean // 清理(删除target目录下编译内容)

将以上经Maven处理过的项目导入Eclipse即可。

Maven其他常用命令

  1. mvn compile :编译源代码(编译到target文件夹中)
  2. mvn test-compile :编译测试代码 mvn test 运行应用程序中的单元测试
  3. mvn site 生成项目相关信息的网站
  4. mvn clean :清除目标目录中的生成结果(把默认target文件夹中的数据清理)
  5. mvn package 项目打包
  6. mvn install :将打包好的包安装到本地仓库中,以使其塔项目能够调用

当然这些命令可以一起使用,例如:

  1. mvn clean compile package install //(清理,编译,打包,安装jar), 打jar包并且安装到别的应用
  2. mvn clean compile package cargo:deploy //(清理,编译,打包,安装war),打war包并部署

参考资料

  1. http://maven.apache.org/
  2. 《Maven实战》 徐晓斌 著;
  3. 《Maven教程》 极客学院;
  4. http://www.cnblogs.com/quanyongan/archive/2013/04/17/3025971.html
  5. http://blog.csdn.net/fengshizty/article/details/43019561

Maven环境配置及简单使用(二)的更多相关文章

  1. 【maven教程】(1)---maven环境配置

    maven环境配置 刚开始学习maven,现在项目需要用到maven,而且他确实很好用,也比较容易上手,我也是主要通过视频学习,在写博客的时候也会总结其它人所写 博客,从简到难,如果你也是初学者那接下 ...

  2. Eclipse上Maven环境配置使用 (全)

    Eclipse上Maven环境配置使用 (全) 1. 安装配置Maven: 1.1 从Apache网站 http://maven.apache.org/ 下载并且解压缩安装Apache Maven. ...

  3. Java-Maven(四):Eclipse集成Maven环境配置

    一般maven都需要集成到IDE上使用的,而不是单独的使用,常见的maven可集成IDE:eclipse.IntelliJ IDEA.但这里就只学习eclipse集成maven的基础上,进行maven ...

  4. Mac 下 java环境 maven环境配置

    java环境配置 下载jdk,按照提示安装 我下的是1.8.0版本,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8- ...

  5. 本地Maven环境配置

    本地Maven环境配置 下载配置文件:http://10.1.10.138:6060/root/DevelopmentSpecification/archive/master.zip 解压master ...

  6. java 环境配置 maven 环境配置

    1.windows 下Java 环境的安装和配置: 下载jdk并安装 配置环境变量: (1) 新建JAVA_HOME环境变量,赋值为JDK的安装目录: (2) 新建CLASSPATH环境变量,赋值为. ...

  7. Java-Maven-Runoob:Maven环境配置

    ylbtech-Java-Maven-Runoob:Maven环境配置 1.返回顶部 1. Maven 环境配置 Maven 是一个基于 Java 的工具,所以要做的第一件事情就是安装 JDK. 如果 ...

  8. android data binding jetpack I 环境配置 model-view 简单绑定

    android data binding jetpack VIII BindingConversion android data binding jetpack VII @BindingAdapter ...

  9. 【第二篇】- Maven 环境配置之Spring Cloud直播商城 b2b2c电子商务技术总结

    Maven 环境配置 Maven 是一个基于 Java 的工具,所以要做的第一件事情就是安装 JDK. 如果你还未安装 JDK,可以参考我们的 Java 开发环境配置. 系统要求 项目 要求 JDK ...

随机推荐

  1. ubuntu14.04终端分屏terminator的安装使用与配置

    安装 terminator 软件 . sudo apt-get install terminator 这个终端程序可以分屏,常用操作快捷键如下: Ctrl+Shift+O Split terminal ...

  2. C++ 文件和流

    到目前为止,我们已经使用了 iostream 标准库,它提供了 cin 和 cout 方法分别用于从标准输入读取流和向标准输出写入流. 本教程介绍如何从文件读取流和向文件写入流.这就需要用到 C++ ...

  3. Omi框架学习之旅 - 组件通讯(group-data通讯) 及原理说明

    childrenData的方式可以批量传递数据给组件,但是有很多场景下data的来源不一定非要都从childrenData来, childrenData是个数组,会和组件的顺序一一对应,这就给不同传递 ...

  4. linux调度器源码分析 - 运行(四)

    本文为原创,转载请注明:http://www.cnblogs.com/tolimit/ 引言 之前的文章已经将调度器的数据结构.初始化.加入进程都进行了分析,这篇文章将主要说明调度器是如何在程序稳定运 ...

  5. sql server使用的相关基础知识

    1.表的管理--表和列的命名 必须以字母开头 长度不能超过128字符 不要使用sql server的保留字 只能使用如下字符A-Z,a-z,0-9,$,#,_等等 2.表的管理--支持的数据类型 字符 ...

  6. 初识Identity(一)

    一.Authentication(身份验证)和Authorization(授权) 如何构建安全的web应用?authentication和authorization是asp.net中最重要最基本的防护 ...

  7. Apache cxf暴露接口以及客户端调用之WebService初步理解

    在我们真实的项目中,经常会调用别人提供给我们的接口,或者在自己的团队中, restful风格的前后端分离也经常会提供一个后端接口暴露出去供app,或者.net/C/C++程序员去调用,此时就需要使用到 ...

  8. c# 获取文件本身的哈希值

    1. 哈希值是什么 我个人认为,哈希值是一个统称,也就是经过加密算法后得出的长度较短.位数固定的输出序列即散列值,这个哈希值是一个凭证,一个数字签名之类的,唯一对应你加密之前的东西,这都是我自个儿觉得 ...

  9. Ubuntu 16.04 下部署Node.js+MySQL微信小程序商城

    转载于这篇文章 关于pm2看这篇文章 最近在研究小程序,申请了域名之后,再一次来配置环境,根据作者的步骤基本上完成了网站的架构,但由于环境路径等不同,配置上会有所不同,因此记录下来. 1.更新系统和安 ...

  10. 【JVM.1】java内存区域与内存溢出

    鲁迅曾说过:Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的“高墙”,墙外面的人想进来,墙里面的人想出去. 一.虚拟机内存分布 Java虚拟机在执行Java程序的过程中会把它所管理的内存 ...