来自IT技术老兵的一次Maven学习总结——春晓张立勇

Posted 春晓早知道

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了来自IT技术老兵的一次Maven学习总结——春晓张立勇相关的知识,希望对你有一定的参考价值。

我是春晓互联网公司的安卓开发张立勇。

一:Maven是什么?

Maven是一个项目管理工具,它包含了一个项目对象模型(Project Object Model),一组标准集合,一个的项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑,

Maven这个单词来自于意第绪语(犹太语),意为知识的积累,最初在Jakata Turbine项目中用来简化构建过程。当时有一些项目(有各自Ant build文件),仅有细微的差别,而JAR文件都由CVS来维护。于是希望有一种标准化的方式构建项目,一个清晰的方式定义项目的组成,一个容易的方式发布项目的信息,以及一种简单的方式在多个项目中共享JARs。

Maven 有一个生命周期,当你运行 mvn install 的时候被调用。这条命令告诉 Maven 执行一系列的有序的步骤,直到到达你指定的生命周期。遍历生命周期旅途中的一个影响就是,Maven 运行了许多默认的插件目标,这些目标完成了像编译和创建一个 JAR 文件这样的工作。

此外,Maven能够很方便的帮你管理项目报告,生成站点,管理JAR文件,等等。

二:为什么使用Maven这样的项目管理工具?

1.如果项目非常庞大,就不适合在项目里使用package来划分模块,最好是每个模块对应一个工程,方便协作开发和管理

2.同样的jar包在出现在不同的工程目录中,我要重复的做着CV工作

使用Maven将jar包放到 "仓库中",只要在不同的工程中引用即可

3.借助Maven我们可以使用统一规范的方式下载和使用jar包

三:安装Maven

1.首先确保JAVA_HOME环境变量配置正确

2.下载 Maven 解压Maven到一个非中文无空格的目录下

3.配置Maven的环境变量

a.在系统环境变量中增加M2_HOME,变量值是Maven的根路径

b.在path中增加%M2_HOME%\bin;

4.在cmd命令窗口中输入 mvn -v 回车,出现下图信息表示配置成功

来自IT技术老兵的一次Maven学习总结——春晓张立勇

三:创建一个Maven项目

1.约定创建项目的工程目录结构

[1] 根目录:工程名

[2] |---src:源码

[3] |---|---main:存放主程序

[4] |---|---|---java:java源码文件

[5] |---|---|---resource:存放框架的配置文件

[6] |---|---test:存放测试程序

[7] |---pop.xml:maven的核心配置文件

2.采用命令的方式创建一个Maven工程

来自IT技术老兵的一次Maven学习总结——春晓张立勇

进入电脑E盘的maven目录下 输入 mvn archetype:generate 命令 回车 创建一个maven工程的原型骨架

等待一会儿,出现下图信息,按提示输入回车

来自IT技术老兵的一次Maven学习总结——春晓张立勇


来自IT技术老兵的一次Maven学习总结——春晓张立勇

最后创建成功的截图

来自IT技术老兵的一次Maven学习总结——春晓张立勇

我们来看下我们E盘的maven目录下,创建了一个maven项目

来自IT技术老兵的一次Maven学习总结——春晓张立勇

接下来我们把这个项目工程导入到eclipse中,发现是无法导入的

来自IT技术老兵的一次Maven学习总结——春晓张立勇

因为eclipse导入项目是需要

来自IT技术老兵的一次Maven学习总结——春晓张立勇

这两个文件的,下面我们用maven命令来生成这两个文件,进入我们新建的工程目录下 输入mvn eclipse:eclipse 命令回车

来自IT技术老兵的一次Maven学习总结——春晓张立勇


来自IT技术老兵的一次Maven学习总结——春晓张立勇

出现上图信息表示成功了,我们来看一下刚才的工程目录

来自IT技术老兵的一次Maven学习总结——春晓张立勇

这样我们就能往eclipse中导入工程了

来自IT技术老兵的一次Maven学习总结——春晓张立勇


来自IT技术老兵的一次Maven学习总结——春晓张立勇

开头我们说的   [5] |---|---|---resource:存放框架的配置文件

这个目录可以自己创建

四:Maven核心文件

maven的作用就是管理我们项目中所需要的jar包,打开pom.xml

来自IT技术老兵的一次Maven学习总结——春晓张立勇

仓库的分类:

本地仓库:当期电脑上的仓库

远程仓库:

私服:搭建在局域网中,一般公司都有自己的私服,私服一般使用nexus来搭建。具体搭建过程可以查询其他资料

中央仓库:中央仓库的服务器在国外我们下载jar包的时候比较慢

阿里云私服:http://maven.aliyun.com/nexus/content/groups/public

开源中国私服:http://maven.oschina.net/content/groups/public

四:Maven命令对项目进行编译测试打包

添加Junit4测试依赖,右击项目选择properties 并找到 Java Build Path

来自IT技术老兵的一次Maven学习总结——春晓张立勇

来自IT技术老兵的一次Maven学习总结——春晓张立勇

来自IT技术老兵的一次Maven学习总结——春晓张立勇

选择Junit4 点击finish

接下来编写这两个类

来自IT技术老兵的一次Maven学习总结——春晓张立勇


来自IT技术老兵的一次Maven学习总结——春晓张立勇

下面我们通过maven命令项目进行编译和打包

  1. 用maven的生命周期命令进行编译 mvn compile

来自IT技术老兵的一次Maven学习总结——春晓张立勇

编译成功后项目根目录下会出现target目录 里面存放了 编译好的class文件

2.测试

输入 mvn test 命令 下图信息表示运行成功了一个测试用例

来自IT技术老兵的一次Maven学习总结——春晓张立勇

3.打包

输入 mvn package

来自IT技术老兵的一次Maven学习总结——春晓张立勇

来自IT技术老兵的一次Maven学习总结——春晓张立勇

这就是我们的打包结果

Maven简单安装配置的使用和命令方法学习总结,总结的不是很全面,如果想要深入了解,可以查阅一下学习资料

更多精彩文章请阅读:





以上是关于来自IT技术老兵的一次Maven学习总结——春晓张立勇的主要内容,如果未能解决你的问题,请参考以下文章

管理与技术未必不可兼得,一个20年IT老兵的码农生涯

30 年 IT 老兵谈数字化:这就不是个技术活

30 年 IT 老兵谈数字化:这就不是个技术活

腾讯IT老兵:云端微服务架构下的运维思考

微职位公开课老学长自述:如何成为年薪50W的技术工程师

中钢集团CIO李红对数字化转型的思考