博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Maven入门
阅读量:2489 次
发布时间:2019-05-11

本文共 3758 字,大约阅读时间需要 12 分钟。

前言

       大神都是从菜鸟成长起来的,乖乖从最基础的开始学习!

       掌握需要理解记忆,而非一时快餐,那么,梳理一下自己的知识体系,输出……

学习Maven,理由呢?

         在我们建立一个项目的时候,会用到各种包,如果一个项目还没有建立,就引进了一堆的jar包,这时候,就会造成我们的项目中包含了一堆我们需要的、不需要的jar包,造成项目臃肿、占内存、东西混乱。

          出现了这种问题,那么就有这种问题的解决办法,此时,IT界出现了Maven、Ant、gradle等项目管理利器和构建工具,这些工具可使我们更加方便的管理工具。

现如今,很多公司里面都用到Maven来管理各种框架、规整管理项目,如果你能够熟练应用这把剑,那么……

 

学习Maven需要掌握那些知识?

        入门---各种概念、windows下搭建环境、体验Maven项目的目录结构和构建过程。

         核心---创建maven目录、仓库、更改仓库路径,在Eclipse中安装maven插件,PUM中的常用标签和。

         Maven下的web项目---JT插件,打包项目到Jetty中。

 

Maven快速入门

敲门

概念:Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建、报告、和文档的软件项目管理工具。

Maven的目录结构:

          Bin:mvn运行脚本

          Boot:包含了类加载器的框架

         Conf:存放一些配置文件,常用的有setting.xml文件

          Lib:包含了maven常用的类库,除了自身的还有常用第三方的UI类库。

Maven安装

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项目

先来认识一下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/

你可能感兴趣的文章
测试—自定义消息处理
查看>>
MFC中关于虚函数的一些问题
查看>>
根据图层名获取图层和图层序号
查看>>
规范性附录 属性值代码
查看>>
提取面狭长角
查看>>
Arcsde表空间自动增长
查看>>
Arcsde报ora-29861: 域索引标记为loading/failed/unusable错误
查看>>
记一次断电恢复ORA-01033错误
查看>>
C#修改JPG图片EXIF信息中的GPS信息
查看>>
从零开始的Docker ELK+Filebeat 6.4.0日志管理
查看>>
Sequelize的原始查询的时区问题
查看>>
How it works(1) winston3源码阅读(A)
查看>>
How it works(2) autocannon源码阅读(A)
查看>>
How it works(3) Tilestrata源码阅读(A)
查看>>
How it works(12) Tileserver-GL源码阅读(A) 服务的初始化
查看>>
uni-app 全局变量的几种实现方式
查看>>
echarts 为例讲解 uni-app 如何引用 npm 第三方库
查看>>
uni-app跨页面、跨组件通讯
查看>>
springmvc-helloworld(idea)
查看>>
JDK下载(百度网盘)
查看>>