`
nanjingjiangbiao_T
  • 浏览: 2683304 次
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

Maven实战(二)构建简单Maven项目

 
阅读更多

上一节讲了maven的安装和配置,这一节我们来学习一下创建一个简单的Maven项目

1. 用Maven 命令创建一个简单的Maven项目

在cmd中运行如下命令:

Cmd代码 复制代码收藏代码
  1. mvnarchetype:generate
  2. -DgroupId=com.mycompany.app
  3. -DartifactId=my-app-simple
  4. -Dversion=1.0
  5. -DarchetypeArtifactId=maven-archetype-quickstart

即可在当前目录创建一个简单的maven项目,当然创建的时候会从Maven库中下载相关的依赖,耐心等待即可。

maven的大致结构如下:

Java代码 复制代码收藏代码
  1. my-app
  2. |--pom.xml
  3. `--src
  4. |--main
  5. ||--java
  6. ||`--com
  7. ||`--mycompany
  8. ||`--app
  9. ||`--App.java
  10. |`--resources
  11. |`--META-INF
  12. |`--application.properties
  13. `--test
  14. `--java
  15. `--com
  16. `--mycompany
  17. `--app
  18. `--AppTest.java

src/main/java: java源文件存放位置

src/main/resource : resource资源,如配置文件等

src/test/java : 测试代码源文件存放位置

2.简单POM.xml

打开项目即可看到pom.xml

Xml代码 复制代码收藏代码
  1. <projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  2. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/maven-v4_0_0.xsd">
  3. <modelVersion>4.0.0</modelVersion>
  4. <groupId>com.mycompany.app</groupId>
  5. <artifactId>my-app-simple</artifactId>
  6. <packaging>jar</packaging>
  7. <version>1.0</version>
  8. <name>my-app-simple</name>
  9. <url>http://maven.apache.org</url>
  10. <dependencies>
  11. <dependency>
  12. <groupId>junit</groupId>
  13. <artifactId>junit</artifactId>
  14. <version>3.8.1</version>
  15. <scope>test</scope>
  16. </dependency>
  17. </dependencies>
  18. </project>

这段代码中最重要的是包含groupId, artifactId 和 version 的三行。这三个元素定义了一个项目基本的坐标

groupId 定义了项目属于哪个组,这个组往往和项目所在的组织或公司存在关联。譬如在googlecode上建立了一个名为myapp的项目,那么groupId就应该是com.googlecode.myapp

artifactId 定义了当前Maven项目在组织中唯一的ID, 可以理解为项目中的模块, 模块为Maven中最小单位构件

version 项目的版本

3.运行简单Maven命令

我们已经创建了最简单的Maven项目,下面我们来执行一些简单的构建命令

编译: compile

在cmd中,将目录切换到my-app-simple下,执行mvn clean compile

build success之后我们会在my-app-simple下看到新增了一个target目录,该目录下存放项目编译后的文件,如.class文件

清理:clean

cmd目录my-app-simple下执行命令 mvn clean

会将target文件删除,即清理项目,该命令可以结合其他命令运行

测试: test

cmd目录my-app-simple下执行命令 mvn test

会执行src/test/java 下的Junit 测试代码

当然在执行测试之前会自动执行编译命令,运行结果如下图:



打包: package

cmd目录my-app-simple下执行命令 mvn package

会将项目打成jar包,并放在target目录中

执行此命令之前会先执行编译和测试命令

安装:install

cmd目录my-app-simple下执行命令 mvn install

会将项目jar包安装到本地仓库中,以便其他项目使用

执行此命令之前会先执行编译,测试,打包命令

转载自:http://www.iteye.com/topic/1123221

分享到:
评论

相关推荐

    Maven 实战(中文pdf)

    《Maven实战》是一本专为Java开发人员设计的指南,深入浅出地介绍了Maven这一强大的项目管理和构建工具。Maven是Apache软件基金会开发的一个开源项目,它以XML文件格式定义项目,能够自动化构建、依赖管理和项目信息...

    maven 实战 所有源代码

    ** Maven实战:所有源代码详解 ** Maven是一款强大的项目管理和构建工具,广泛应用于Java开发领域。...通过学习并掌握"Maven实战"中的源代码,开发者可以更好地应对复杂的项目构建挑战,实现高效且可维护的Java项目。

    Maven实战 Maven实战Maven实战

    《Maven实战》一书设计了一个背景案例,后续章节围绕该案例展开,通过具体的项目构建实例,加深读者对Maven的理解和掌握。例如,如何使用Maven进行Web应用的构建、如何利用Hudson进行持续集成等。 #### 总结 Maven...

    Maven 实战.pdf-完整版

    Maven不仅可以管理项目的构建、报告、文档生成,还可以管理依赖、源码、文档、测试、打包、分发等,并提供了对应的插件机制,以支持更广泛的构建任务。 Maven的实战性强,意味着在学习和使用过程中,通常会结合大量...

    Maven 实战源码

    《Maven实战源码》是一本专为Java开发者设计的指南,旨在帮助初学者和有经验的开发者深入理解和掌握Maven这一强大的项目管理和构建工具。Maven不仅简化了项目的构建过程,还通过依赖管理和插件机制,使得软件开发...

    《Maven实战》源代码

    通过学习《Maven实战》中的源代码,读者可以深入理解Maven的构建流程,掌握如何有效地管理项目依赖,以及如何设置和配置Maven来适应不同的开发场景。同时,这些源码实例有助于开发者在实际工作中解决可能出现的问题...

    项目管理Maven实战

    通过本文的介绍,我们可以看出Maven不仅仅是一个简单的构建工具,它还是一整套项目管理和理解工具。通过学习Maven的核心概念和高级特性,开发者可以更高效地管理Java项目,提高开发效率和代码质量。《Maven实战》一...

    Maven实战,Maven

    Maven实战是针对Maven这一流行的项目管理工具的实战指南,它主要面向希望通过Maven进行项目构建、管理的开发者和项目经理。Maven本质上是一个项目对象模型(POM),它使用XML文件对项目进行管理,而通过在项目中包含...

    《Maven 实战》.zip

    Maven——这一Java社区事实标准的项目管理工具,能帮你从琐碎的手工劳动中解脱出来,帮你规范整个组织的构建系统。不仅如此,它还有依赖管理、自动生成项目站点等超酷的特性,已经有无数的开源项目使用它来构建项目...

    Maven《实战》许晓斌完整版包含源码

    **Maven实战——许晓斌完整版** Maven是一个强大的项目...通过阅读《Maven实战》并实践书中的例子,开发者能够熟练掌握Maven的使用,提升项目管理效率,减少构建复杂性,同时也能更好地融入到Java开发的生态系统中。

    《Maven实战》

    对于想要掌握Maven并将其应用于实际项目中的开发者来说,《Maven实战》是一本非常实用的参考书。通过本书的学习,读者不仅可以了解到Maven的工作原理,还能学到如何高效地利用Maven来管理复杂的Java项目。

    maven 实战 in action 中文版 3.3

    ** Maven实战In Action中文版3.3:构建高效Java项目** Maven,作为Apache软件基金会的一个项目,是一款强大的项目管理工具,尤其在Java开发领域,它简化了构建、依赖管理和项目文档的流程。《Maven实战In Action...

Global site tag (gtag.js) - Google Analytics