深入理解Maven环境搭建和介绍
maven是一个项目管理的java 工具,在javaee中,我们可以使用maven方便地管理团队合作的项目,现在我们在学习javaee框架,使用maven可以管理类库,有效方便地供团队中的其他人员使用。
最近项目弄完了,有好多时间,准备把以前的知识复习一遍,以便日后更好的使用,先从maven搭建开始,然后再搭建以下ssh+mybatis的框架,弄完了在学学hadoop分布式相关的东西。
安装前先配置好电脑的相关环境变量。
一、配置maven的环境
下载地址:(window下载(binary zip)的)
将maven解压,然后配置环境变量打开: 计算机------系统属性------高级系统设置------环境变量
系统变量新建 m2_home
变量值e:\apache-maven-3.2.5(maven解压位置)
path中添加
;%m2_home%\bin ----在path的后面先添加;号
启动cmd,输入mvm -v可以查看版本
二、修改本地仓库位置
maven默认的本地仓库位置,是在当前用户目录下/.m2/repository中,我们可以配置到别的盘。
这儿配置到了e:/m2/repository下。
然后打开cmd,运行一条简单的maven命令:mvn help:system 下载相关的maven信息。
三、配置eclipse的maven插件
1、 打开eclipse,选择help----install new software------add
name : m2e
location : http://m2eclipse.sonatype.org/sites/m2e
下载好之后解压:将里面的features和plugins文件夹下内容复制到eclipse对应的features和plugins中,重启即可。
2、配置用户范围setting.xml
%m2_home%/conf/setting.xml是全局的设置,这个电脑上所有的用户都会受影响,所以将%m2_home%/conf/setting.xml复制一份,到上面配置仓库位置中如我的f:/m2文件夹下。
3、设置maven_opts环境变量
当项目过大时,容易出现outofmemoryerror异常,所以我们需要修改运行内容,有以下两种方法:
1)在maven的bin/mvn.bat中加入set maven_opts= -xms125m -xmx512m
2)在环境变量中添加 maven_opts 变量值为-xms125m -xmx512m
4、配置eclipse
在window——preferences——maven
installations勾掉默认的maven,add安装的maven目录
user settings中选择本地仓库配置的setting.xml,如我的e:\m2\settings.xml
点击应用。
四、创建maven项目
在eclipse中选择新建maven project,选择工作环境
1、选择要创建的filter如下:
2、填写maven项目坐标信息
我们可以看到已经生成maven结构的项目了。
五、maven简单的介绍
下面是生成的maven的pom.xml文件,我们可以看一下:
<project xmlns="http://maven.apache.org/pom/4.0.0" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelversion>4.0.0</modelversion> <groupid>org.andy</groupid> <artifactid>redis_demo</artifactid> <version>0.0.1-snapshot</version> <packaging>jar</packaging> <name>redis_demo</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceencoding>utf-8</project.build.sourceencoding> </properties> <dependencies> <dependency> <groupid>junit</groupid> <artifactid>junit</artifactid> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> </project>
其标签的具体含义如下:
project:pom.xml文件中的顶层元素;
modelversion:指明pom使用的对象模型的版本。这个值很少改动。
groupid:指明创建项目的组织或者小组的唯一标识。groupid是项目的关键标识,典型的,此标识以组织的完全限定名来定义。比如,org.apache.maven.plugins是所有 maven插件项目指定的groupid。
artifactid:指明此项目产生的主要产品的基本名称。项目的主要产品通常为一个jar文件。第二,象源代码包通常使用artifactid作为最后名称的一部分。典型的产品名称使用这个格式: <artifactid>- <version>. <extension>(比如:myapp-1.0.jar)。
version:项目产品的版本号。maven帮助你管理版本,可以经常看到snapshot这个版本,表明项目处于开发阶段。
name:项目的显示名称,通常用于maven产生的文档中。
url:指定项目站点,通常用于maven产生的文档中。
description:描述此项目,通常用于maven产生的文档中。
properties:pom文件中的配置信息,可以配置全局变量
dependencies:依赖配置集,里面可以添加需要的jar的依赖信息
比如我们需要添加jedis的jar,可以从*仓库搜http://mvnrepository.com/
添加对应的依赖到dependencies标签就可以:
<dependency> <groupid>redis.clients</groupid> <artifactid>jedis</artifactid> <version>2.6.2</version> </dependency>
六、maven的相关命令
mvn archetype:create :创建 maven 项目
mvn compile :编译源代码(编译到target文件夹中)
mvn test-compile :编译测试代码
mvn test : 运行应用程序中的单元测试
mvn site : 生成项目相关信息的网站
mvn clean :清除目标目录中的生成结果(把默认target文件夹中的数据清理)
mvn package : 项目打包
mvn install :将打包好的包安装到本地仓库中,以使其塔项目能够调用
mvn eclipse:eclipse :生成 eclipse 项目文件
mvn -dmaven.test.skip=true : 忽略测试文档编译
cargo:deploy :部署到私有服务器上
当然这些命令可以一起使用比如下
打jar包并且安装到别的应用 clean compile package install (清理,编译,打包,安装jar)
打war包并部署 clean compile package cargo:deploy(清理,编译,打包,安装war)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。