文档章节

Apache Maven3入门教程一

帐号以作废
 帐号以作废
发布于 2014/06/24 17:05
字数 939
阅读 627
收藏 1

Maven是一个采用纯Java编写的开 源项目管理工具。Maven采用了一种被称之为project object model (POM)概念来管理项目,所有的项目配置信息都被定义在一个叫做POM.xml的文件中,通过该文件,Maven可以管理项目的整个声明周期,包括编译,构建,测试,发布,报告等等。

目前大多数项目都已经采用Maven进行管理了,赶快学起来,不然就OUT啦!

一:官方下载Maven

http://maven.apache.org/download.cgi

然后下载完成解压到你的硬盘,例如:E:\Maven\apache-maven-3.0.5

二:配置环境变量

然后再加入到Path变量中

三:测试安装是否成功

打开cmd命令窗口,输入 mvn -version 如下图所示表示安装成功。

四:利用Maven命令来构建一个项目

我将该项目构建到E:\Workspace\Maven\01目录下

进入命令行,cd到该目录下

然后输入:mvn archetype:create -DgroupId=org.edward.hellomaven -DartifactId=HelloMaven,回车

构建成功,如下图:

我们回到我们构建目录下:E:\Workspace\Maven\01 可以看到Maven已经给我们构建了一个项目,如下图:

五:POM.xml

我们打开maven构建项目生成的pom.xml文件

然后,我们继续进入构建项目的目录

我们可以看到在E:\Workspace\Maven\01\HelloMaven\src\main\java\org\edward\hellomaven目录下Maven默认给我生成App.java 是一个Java helloworld程序。

同时在E:\Workspace\Maven\01\HelloMaven\src\test\java\org\edward\hellomaven目录下,Maven默认给我生成AppTest.java 是一个junit的测试类

六:利用Maven命令编译、构建、测试等

首先,回到cmd命令窗口,j进入构建的项目路径下,输入:mvn compile,回车

成功编译出现如下信息:

并且还会在项目中生成target的目录,该目录下就是Maven 刚刚把我们的项目进行的编译生成的class文件

接下来,输入:mvn test 如下图:

然后回车,如下图:

mvn test 会将test目录下的测试类编译运行并把测试结果以及测试报告生成出来,如下图

七:小结

通过以上的叙述与实例,应该可以对Maven有一个粗略的认识了。使用Maven关键是要弄清楚如何写pom.xml文件利用好Maven的继承特性及子工程的关系,可以很好地简化POM文件,并能够构建层次结构良好的工程,有利于工程的维护。

Maven 工具

validate:验证工程是否正确,所有需要的资源是否可用。
compile:编译项目的源代码。  
test:使用合适的单元测试框架来测试已编译的源代码。这些测试不需要已打包和布署。
Package:把已编译的代码打包成可发布的格式,比如jar。
integration-test:如有需要,将包处理和发布到一个能够进行集成测试的环境。
verify:运行所有检查,验证包是否有效且达到质量标准。
install:把包安装在本地的repository中,可以被其他工程作为依赖来使用。
Deploy:在集成或者发布环境下执行,将最终版本的包拷贝到远程的repository,使得其他的开发者或者工程可以共享。
clean:清除先前构建的artifacts(在maven中,把由项目生成的包都叫作artifact)。
site:为项目生成文档站点。 


未完待续...


© 著作权归作者所有

共有 人打赏支持
帐号以作废
粉丝 2
博文 6
码字总数 2111
作品 0
深圳
程序员
私信 提问
安装maven及eclipse中安装maven插件

maven不仅是项目构建工具,还是一个功能强大的项目管理工具。 大多数的开源项目都是用maven来够建的。如果想更多的了解maven,可以参考: Maven入门指南(一) 和 Maven入门指南(二)。 一:...

孟飞阳
2016/06/28
39
0
总有你要的编程书单(GitHub )

目录 IDE IntelliJ IDEA 简体中文专题教程 MySQL 21分钟MySQL入门教程 MySQL索引背后的数据结构及算法原理 NoSQL Disque 使用教程 Neo4j .rb 中文資源 Redis 命令参考 Redis 设计与实现 The ...

汇智网
2017/11/22
0
0
free-programming-books-zh.md

语言无关MySQL NoSQL PostgreSQL Web WEB服务器 其它 函数式概念 分布式系统 在线教育 大数据 操作系统 数据库 智能系统 正则表达式 版本控制 程序员杂谈 管理和监控 编程艺术 编译原理 编辑...

银月光海
2016/05/20
70
0
开源电子书

目录 语言无关类 操作系统 智能系统 分布式系统 编译原理 函数式概念 计算机图形学 WEB服务器 版本控制 编辑器 NoSQL PostgreSQL MySQL 管理和监控 项目相关 设计模式 Web 大数据 编程艺术 ...

zting科技
2017/12/11
0
0
编程类开放书籍荟萃(转载)

关于开源图书有人在网络上做了大量整理,本文为大家刊载《免费的编程中文书籍索引》 国外程序员在 stackoverflow 推荐的程序员必读书籍,中文版。 stackoverflow 上的程序员应该阅读的非编程...

行者PHPer
2016/10/09
77
0

没有更多内容

加载失败,请刷新页面

加载更多

最重要的是做什么,而不是怎么做。

最重要的是做什么,而不是怎么做。 做什么是战略,怎么做是战术。将军下令说,天黑前拿下这座山头,这是战略。手下的士兵可以不知道为什么要拿下这座山头,还非得是天黑之前,但士兵必须知道...

我是菜鸟我骄傲
41分钟前
0
0
w, vmstat, top, sar, nload命令查看系统状态信息

w/uptime 查看系统负载 cat /proc/cpuinfo 查看cpu核数 vmstat 监控系统状态,用法 vmstat 1,关键的几列: r, b, swpd, si, so, bi, bo, us, wa top 查看进程使用资源情况 top -c 显示详细的...

野雪球
今天
2
0
小白创建一个spring boot项目

进入 https://start.spring.io/

lilugirl
今天
3
0
Alibaba Java诊断利器Arthas实践--使用redefine排查应用奇怪的日志来源

背景 随着应用越来越复杂,依赖越来越多,日志系统越来越混乱,有时会出现一些奇怪的日志,比如: [] [] [] No credential found 那么怎样排查这些奇怪的日志从哪里打印出来的呢?因为搞不清...

hengyunabc
今天
2
0
home hosts

home hosts lwk@qwfys:~$ cat /etc/hosts127.0.0.1 localhost127.0.1.1 qwfys192.168.56.101vm600.qwfys.com39.108.212.91alpha1.ppy.com39.108.117.122alpha2.p......

qwfys
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部