Maven环境配置及简单使用(二)
Maven环境变量配置
配置Maven前先从官网下载相关版本,Maven下载地址:http://maven.apache.org/download.cgi,笔者使用最新版本apache-maven-3.5.0.
配置Maven前须确保已安装Java运行环境,因为Maven基于Java开发,其运行依赖于Java,Java安装配置请参考相关教程。
Windows下环境变量配置
依次打开 我的电脑->高级系统设置->环境变量
设置参数如下:
MAVEN_HOME: D:\soft\java\develop\plugins\apache-maven-3.5.0
PATH: %MAVEN_HOME%\bin
MAVEN_OPTS :-Xms128m -Xmx512m
目录改为maven本地解压路径。
确保配置无误后,win+R 打开终端窗口,输入:
mvn -version
若配置正确,会出现Maven相关信息:
Apache Maven 3.5.0 (ff8f5e7444045639af65f6095c62210b5713f426; 2017-04-04T03:39:0
6+08:00)
Maven home: D:\soft\java\develop\plugins\apache-maven-3.5.0\bin\..
Java version: 1.7.0_80, vendor: Oracle Corporation
Java home: C:\Program Files\Java\jdk1.7.0_80\jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"
Linux下环境变量配置
下载解压Maven到相关目录,配置环境变量:
vim /etc/profile
在profile文件中添加相关配置:
export M2_HOME=/home/soft/apache-maven
export PATH=$PATH:$M2_HOME/bin
export MAVEN_OPTS="-Xms256m -Xmx512m"
保存退出编辑。
打开终端窗口输入如下命令使配置生效:
source /etc/profile
终端窗口输入:
mvn -version会出现maven相关信息:
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-10T08:41:47-08:00)
Maven home: /home/soft/apache-maven
Java version: 1.8.0_131, vendor: Oracle Corporation
Java home: /usr/java/jdk1.8.0_131/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-123.9.3.el7.x86_64", arch: "amd64", family: "unix"
修改Maven本地仓库存放位置:
若不修改Maven本地仓库位置,默认保存在
${user.home}/.m2/repository目录下,如:
C:\Users\Administrator\.m2\repository
若要保存到本地其他目录,需修改Maven配置文件,Maven路径下/conf/settings.xml
<!-- localRepository
| The path to the local repository maven will use to store artifacts.
|
| Default: ${user.home}/.m2/repository
<localRepository>/path/to/local/repo</localRepository>
-->
现在把本地仓库改为
D:/develop/m2/repository,修改后配置文件为:
<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
| The path to the local repository maven will use to store artifacts.
|
| Default: ${user.home}/.m2/repository
<localRepository>/path/to/local/repo</localRepository>
-->
<localRepository>D:/develop/m2/repository</localRepository>
Maven相关命令
使用Maven快速创建项目
打开终端,切换到相关目录,输入一下命令:
mvn archetype:generate
该命令使用交互式创建项目。创建过程中,需用户输入groupId,artifactId等内容。可使用非交互式创建,命令如下:
mvn archetype:generate
-DgroupId=com.turing.app
-DartifactId=maven-demo
-DarchetypeArtifactId=maven-archetype-quickstart
-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项目结构
mvn eclipse:eclipse // 将maven项目变成eclipse,其实是在项目中生成 .project 和 .classpath 两个文件
mvn eclipse:clean // 清理(删除target目录下编译内容)
将以上经Maven处理过的项目导入Eclipse即可。
Maven其他常用命令
mvn compile :编译源代码(编译到target文件夹中)
mvn test-compile :编译测试代码 mvn test : 运行应用程序中的单元测试
mvn site : 生成项目相关信息的网站
mvn clean :清除目标目录中的生成结果(把默认target文件夹中的数据清理)
mvn package : 项目打包
mvn install :将打包好的包安装到本地仓库中,以使其塔项目能够调用
当然这些命令可以一起使用,例如:
mvn clean compile package install //(清理,编译,打包,安装jar), 打jar包并且安装到别的应用
mvn clean compile package cargo:deploy //(清理,编译,打包,安装war),打war包并部署
参考资料
- http://maven.apache.org/
- 《Maven实战》 徐晓斌 著;
- 《Maven教程》 极客学院;
- http://www.cnblogs.com/quanyongan/archive/2013/04/17/3025971.html
- http://blog.csdn.net/fengshizty/article/details/43019561
Maven环境配置及简单使用(二)的更多相关文章
- 【maven教程】(1)---maven环境配置
maven环境配置 刚开始学习maven,现在项目需要用到maven,而且他确实很好用,也比较容易上手,我也是主要通过视频学习,在写博客的时候也会总结其它人所写 博客,从简到难,如果你也是初学者那接下 ...
- Eclipse上Maven环境配置使用 (全)
Eclipse上Maven环境配置使用 (全) 1. 安装配置Maven: 1.1 从Apache网站 http://maven.apache.org/ 下载并且解压缩安装Apache Maven. ...
- Java-Maven(四):Eclipse集成Maven环境配置
一般maven都需要集成到IDE上使用的,而不是单独的使用,常见的maven可集成IDE:eclipse.IntelliJ IDEA.但这里就只学习eclipse集成maven的基础上,进行maven ...
- Mac 下 java环境 maven环境配置
java环境配置 下载jdk,按照提示安装 我下的是1.8.0版本,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8- ...
- 本地Maven环境配置
本地Maven环境配置 下载配置文件:http://10.1.10.138:6060/root/DevelopmentSpecification/archive/master.zip 解压master ...
- java 环境配置 maven 环境配置
1.windows 下Java 环境的安装和配置: 下载jdk并安装 配置环境变量: (1) 新建JAVA_HOME环境变量,赋值为JDK的安装目录: (2) 新建CLASSPATH环境变量,赋值为. ...
- Java-Maven-Runoob:Maven环境配置
ylbtech-Java-Maven-Runoob:Maven环境配置 1.返回顶部 1. Maven 环境配置 Maven 是一个基于 Java 的工具,所以要做的第一件事情就是安装 JDK. 如果 ...
- android data binding jetpack I 环境配置 model-view 简单绑定
android data binding jetpack VIII BindingConversion android data binding jetpack VII @BindingAdapter ...
- 【第二篇】- Maven 环境配置之Spring Cloud直播商城 b2b2c电子商务技术总结
Maven 环境配置 Maven 是一个基于 Java 的工具,所以要做的第一件事情就是安装 JDK. 如果你还未安装 JDK,可以参考我们的 Java 开发环境配置. 系统要求 项目 要求 JDK ...
随机推荐
- linux mint软件安装
安装linux mint步骤请自行百度,这里略过....下载地址:https://www.linuxmint.com/edition.php?id=246文档下载:https://www.linuxm ...
- AI 奇异值分解(SVD)
奇异值分解(Singular Value Decomposition,简称SVD),将矩阵分解为奇异向量(singular vector)和奇异值(singular value). 每个实数矩阵都有一 ...
- 【Codeforces 1129C】Morse Code
Codeforces 1129 C 题意:给一个0/1串,问它的每一个前缀中的每一个子串能解析成莫尔斯电码的串的种数. 思路:首先对于这个串构造后缀自动机,那么从起点走到每一个节点的每一条路径都代表了 ...
- Android学习之基础知识十三 — 四大组件之服务详解第二讲(完整版的下载示例)
上一讲学习了很多关于服务的使用技巧,但是当在真正的项目里需要用到服务的时候,可能还会有一些棘手的问题让你不知所措.接下来就来综合运用一下,尝试实现一下在服务中经常会使用到的功能——下载. 在这一讲我们 ...
- linxu自定义安装及网络配置
1.VMware及Centos6下载 链接:https://pan.baidu.com/s/1XMgBXA13e2zovijhcyciIA 提取码:5sqg 2.安装VMware:略 3.安装虚拟 ...
- 4-(基础入门篇)学会刷Wi-Fi模块固件(刷AT指令固件)
http://www.cnblogs.com/yangfengwu/p/8965054.html 基础教程源码链接如果失效,请在淘宝介绍中下载,由于链接很容易失效,如果失效请联系卖家,谢谢 https ...
- 大话设计模式:代理模式 C#
学无止境,精益求精 十年河东,十年河西,莫欺少年穷 学历代表你的过去,能力代表你的现在,学习代表你的将来 所谓代理模式就是你去委托一个人帮你干一件事!例如:你委托我帮你谈恋爱,你委托我帮你陪你媳妇儿逛 ...
- mongo java 踩坑记
为什么会有这么多坑 1. Java会把 id:String = "合法ObjectId" 好心好意的 转为 _id:ObjectId 类型. 2. 为了避免第1点, 我定义了 ...
- linux-流程控制语言
if: for: 增强for循环 while: 统计这个目录下所有文件的大小 编写脚本 执行 help text:
- 回顾:前端模块化和AMD、CMD规范(全)
先列举下一些著名言论: "我想定义一个 each 方法遍历对象,但页头的 util.js 里已经定义了一个,我的只能叫 eachObject 了,好无奈." "Requi ...