上一节讲了maven的安装和配置,这一节我们来学习一下创建一个简单的Maven项目
1. 用Maven 命令创建一个简单的Maven项目
在cmd中运行如下命令:
- mvnarchetype:generate
- -DgroupId=com.mycompany.app
- -DartifactId=my-app-simple
- -Dversion=1.0
- -DarchetypeArtifactId=maven-archetype-quickstart
mvn archetype:generate
-DgroupId=com.mycompany.app
-DartifactId=my-app-simple
-Dversion=1.0
-DarchetypeArtifactId=maven-archetype-quickstart
即可在当前目录创建一个简单的maven项目,当然创建的时候会从Maven库中下载相关的依赖,耐心等待即可。
maven的大致结构如下:
- my-app
- |--pom.xml
- `--src
- |--main
- ||--java
- ||`--com
- ||`--mycompany
- ||`--app
- ||`--App.java
- |`--resources
- |`--META-INF
- |`--application.properties
- `--test
- `--java
- `--com
- `--mycompany
- `--app
- `--AppTest.java
my-app
|-- pom.xml
`-- src
|-- main
| |-- java
| | `-- com
| | `-- mycompany
| | `-- app
| | `-- App.java
| `-- resources
| `-- META-INF
| `-- application.properties
`-- test
`-- java
`-- com
`-- mycompany
`-- app
`-- AppTest.java
src/main/java: java源文件存放位置
src/main/resource : resource资源,如配置文件等
src/test/java : 测试代码源文件存放位置
2.简单POM.xml
打开项目即可看到pom.xml
- <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.0http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>com.mycompany.app</groupId>
- <artifactId>my-app-simple</artifactId>
- <packaging>jar</packaging>
- <version>1.0</version>
- <name>my-app-simple</name>
- <url>http://maven.apache.org</url>
- <dependencies>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>3.8.1</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
-
</project>
<project xmlns="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">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany.app</groupId>
<artifactId>my-app-simple</artifactId>
<packaging>jar</packaging>
<version>1.0</version>
<name>my-app-simple</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</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实战》是一本专为Java开发人员设计的指南,深入浅出地介绍了Maven这一强大的项目管理和构建工具。Maven是Apache软件基金会开发的一个开源项目,它以XML文件格式定义项目,能够自动化构建、依赖管理和项目信息...
** Maven实战:所有源代码详解 ** Maven是一款强大的项目管理和构建工具,广泛应用于Java开发领域。...通过学习并掌握"Maven实战"中的源代码,开发者可以更好地应对复杂的项目构建挑战,实现高效且可维护的Java项目。
《Maven实战》一书设计了一个背景案例,后续章节围绕该案例展开,通过具体的项目构建实例,加深读者对Maven的理解和掌握。例如,如何使用Maven进行Web应用的构建、如何利用Hudson进行持续集成等。 #### 总结 Maven...
Maven不仅可以管理项目的构建、报告、文档生成,还可以管理依赖、源码、文档、测试、打包、分发等,并提供了对应的插件机制,以支持更广泛的构建任务。 Maven的实战性强,意味着在学习和使用过程中,通常会结合大量...
《Maven实战源码》是一本专为Java开发者设计的指南,旨在帮助初学者和有经验的开发者深入理解和掌握Maven这一强大的项目管理和构建工具。Maven不仅简化了项目的构建过程,还通过依赖管理和插件机制,使得软件开发...
通过学习《Maven实战》中的源代码,读者可以深入理解Maven的构建流程,掌握如何有效地管理项目依赖,以及如何设置和配置Maven来适应不同的开发场景。同时,这些源码实例有助于开发者在实际工作中解决可能出现的问题...
通过本文的介绍,我们可以看出Maven不仅仅是一个简单的构建工具,它还是一整套项目管理和理解工具。通过学习Maven的核心概念和高级特性,开发者可以更高效地管理Java项目,提高开发效率和代码质量。《Maven实战》一...
Maven实战是针对Maven这一流行的项目管理工具的实战指南,它主要面向希望通过Maven进行项目构建、管理的开发者和项目经理。Maven本质上是一个项目对象模型(POM),它使用XML文件对项目进行管理,而通过在项目中包含...
Maven——这一Java社区事实标准的项目管理工具,能帮你从琐碎的手工劳动中解脱出来,帮你规范整个组织的构建系统。不仅如此,它还有依赖管理、自动生成项目站点等超酷的特性,已经有无数的开源项目使用它来构建项目...
**Maven实战——许晓斌完整版** Maven是一个强大的项目...通过阅读《Maven实战》并实践书中的例子,开发者能够熟练掌握Maven的使用,提升项目管理效率,减少构建复杂性,同时也能更好地融入到Java开发的生态系统中。
对于想要掌握Maven并将其应用于实际项目中的开发者来说,《Maven实战》是一本非常实用的参考书。通过本书的学习,读者不仅可以了解到Maven的工作原理,还能学到如何高效地利用Maven来管理复杂的Java项目。
** Maven实战In Action中文版3.3:构建高效Java项目** Maven,作为Apache软件基金会的一个项目,是一款强大的项目管理工具,尤其在Java开发领域,它简化了构建、依赖管理和项目文档的流程。《Maven实战In Action...