本文共 3758 字,大约阅读时间需要 12 分钟。
大神都是从菜鸟成长起来的,乖乖从最基础的开始学习!
掌握需要理解记忆,而非一时快餐,那么,梳理一下自己的知识体系,输出……
学习Maven,理由呢?
在我们建立一个项目的时候,会用到各种包,如果一个项目还没有建立,就引进了一堆的jar包,这时候,就会造成我们的项目中包含了一堆我们需要的、不需要的jar包,造成项目臃肿、占内存、东西混乱。
出现了这种问题,那么就有这种问题的解决办法,此时,IT界出现了Maven、Ant、gradle等项目管理利器和构建工具,这些工具可使我们更加方便的管理工具。
现如今,很多公司里面都用到Maven来管理各种框架、规整管理项目,如果你能够熟练应用这把剑,那么……
学习Maven需要掌握那些知识?
入门---各种概念、windows下搭建环境、体验Maven项目的目录结构和构建过程。
核心---创建maven目录、仓库、更改仓库路径,在Eclipse中安装maven插件,PUM中的常用标签和。
Maven下的web项目---JT插件,打包项目到Jetty中。
概念:Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建、报告、和文档的软件项目管理工具。
Maven的目录结构:
Bin:mvn运行脚本
Boot:包含了类加载器的框架
Conf:存放一些配置文件,常用的有setting.xml文件
Lib:包含了maven常用的类库,除了自身的还有常用第三方的UI类库。
Maven就像Eclipse一样,下载后解压然后配置解压包的环境变量即可使用。
首先下载Maven,解压,值得注意的是Maven3.3.3必须使用JDK1.7以上版本才能支持(Maven尽量使用低版本)。
配置环境变量
首先,新建变量:
Name:M2_HOME
Arachive:Maven解压包的路径
其次,添加变量bin目录:
Path:%M2_HOMe%\bin
最后,验证是否配置成功:
Window+R:cmd,输入mvn –version,可以查看到相关的版本信息。
先来认识一下maven项目目录
src
-------main
-------------java
-------------------package
-------------------package
-------test
-------------java
-------------------package
--------resources
1、根据上述结构创建Maven项目目录:
src
--------main
-------------java
------------------com.terence.maven01.model
------------------------HelloWorld.java
---------test
-------------java
------------------com.terence.maven01.model
------------------------HelloWorldTest.java
---------resources
2、编写java代码文件
####HelloWorld.java文件
package com.terence.maven01.model;public class HelloWorld{ publicString sayHello() { return"Hello Maven,Hello World"; }}
####HelloWorldTest.java
package com.terence.maven01.model;import org.junit.*;import org.junit.Assert.*;public class HelloWorldTest{//使用注解对方法进行修饰 @Test publicvoid HelloWorldTest() { Assert.assertEquals("HelloWorld!",new HelloWorld().sayHello()); }}
那么,为什么这么编写呢?
Maven的一大特点就是通过pom.xml去管理jar包以及相关依赖,我们只需要在配置文件中写入依赖的相关配置,这里引入了junit的jar包,Maven就会自动从Maven中央仓库中将我们的jar包下载到本地仓库,关于依赖和仓库的概念后面再细说,这里我们只需要知道我们的Maven项目不必再手动将jar包add到项目的classpath中,而是在pom.xml中声明即可,Maven会自动下载到本地。
到这个地方,项目代码已经写完,此时还需要用一个POM文件来管理项目,那么如何找到并编写POM文件呢?
3、编写POM管理文件
#####pom.xml文件
<?xmlversion="1.0"encoding="UTF-8"?>
<projectxmlns="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/maven-v4_0_0.xsd">
<!--1.指出maven版本4.0.0
2.项目位置:用坐标表示(groupId-项目包名,artifactId-项目名,version-项目版本)此处的项目版本使用快照版本
3.项目中使用了junit4这个框架对项目代码进行测试
-->
<modelVersion>4.0.0</modelVersion>
<groupId>com.terence.maven01</groupId>
<artifactId>maven01-model</artifactId>
<version>0.0.1-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
</dependency>
</dependencies>
</project>
第一行是XML头部,指定了XML的版本和编码方式。
第2-5行则是声明了一些POM相关的命名空间及xsd元素,不是必须的,但能够让第三方工具(如IDE中的XML编辑器)帮助我们快速编辑POM。
modelVersion ——描述这个pom.xml文件是遵从哪个版本的项目描述符,maven3应当设置成4.0.0
groupId ——指明了创建项目的组织的唯一标识符,一般就是包名了
artifactId ——指的是项目中的主要的模块名(primary artifact),默认命名方式是“项目名-模块名”
version ——指的是项目模块的版本,通常使用的是Maven的快照版本
最后,将此文件移动到项目根目录中,方便其识别。
<dependency>元素当中声明了依赖的jar包,当我们编辑pom文件保存后,Maven会自动去下载相应的jar包,这是Maven的主要优点之一。
到此,项目文件的java文件和配置文件都已经写好,下面就可以通过Maven去对我们的项目进行编译、测试以及打包。
4、编译(compile)
进入项目目录下:cd C:\Users\Terence\workspace\maven01
输入命令:mvn compile,对maven01项目进行编译,此时可能等待一段时间,需要下载一堆依赖的文件等,如果以前下载过,这时候就编译的很快,显示编译成功,此时项目根目录下多了一个文件包target,里面包含了一个Classes文件包,里面存放了编译成功后的java代码的字节码文件。
5、测试
输入命令:mvn test,对其进行测试,出现如下结果,说明其测试成功。
此时Target目录下多出了两个文件夹,分别是surefire-reports和test-classes,顾名思义,前者存放的是测试报告,后者存放的是测试类的字节码文件。
6、打包(package)
输入命令:mvn package,对项目进行打包,出现如下界面,表示jar包打包成功。
上述结果表明打包成功的jar包存放在项目根目录下的target目录下此时可以到指定的路径下去找它。
总结
需要掌握的就是:
Maven目录结构的创建
项目基本java代码的编写
项目配置文件pom.xml的编写
三个常用命令:mvn compile、mvn test、mvnpackage
转载地址:http://jdlrb.baihongyu.com/