Maven的创建、标签以及目录结构
2018-01-02 21:41
176 查看
1、创建第一个Maven项目
我们将会率先的创建您的第一个Maven项目!为了创建我们的第一个Maven项目,我们将使用Maven的原型机制。原型被定义为一种原始的模式或模型,从这种模式或模型中,所有其他的东西都被制造出来。在Maven中,原型是一个项目的模板,它与一些用户输入相结合,生成一个已经根据用户需求定制的工作Maven项目。我们将向你们展示原型机制是如何运作的,但是如果你们想了解更多关于原型的知识请参考我们对原型的介绍
创建您的第一个项目!为了创建最简单的Maven项目,从命令行执行以下命令:
一旦您执行了这个命令,您就会注意到发生了一些事情。首先,您将注意到,为新项目创建了一个名为my-app的目录,这个目录包含一个名为pom的文件。xml应该是这样的:
pom.xml包含这个项目的项目对象模型(POM)。POM是Maven的基本工作单元。这一点很重要,因为Maven本身就是以项目为中心的,一切都围绕项目的概念进行。简而言之,POM包含了您的项目的每一个重要信息,并且本质上是一种一站式的搜索,可以找到与您的项目相关的任何东西。了解POM是很重要的,并且鼓励新用户参考POM的介绍。
2、Maven项目中的标签及其含义
这是一个非常简单的POM,但是仍然显示每个POM所包含的关键元素,所以让我们遍历它们,让您熟悉POM要点:
3、Maven的目录结构
关于在POM中使用哪些元素的完整参考资料,由于篇幅比较长,内容比较多,所以说我就不写下来了,直接上链接,如下:
Maven中使用的Maven项目描述符的引用
现在让我们回到手头的项目,在您的第一个项目的原型生成之后,您还会注意到以下目录结构已经创建:
正如您所看到的,从原型创建的项目有一个POM,一个用于您的应用程序源代码的源树,以及一个用于测试源的源树。这是Maven项目的标准布局(应用程序源位于
我们将会率先的创建您的第一个Maven项目!为了创建我们的第一个Maven项目,我们将使用Maven的原型机制。原型被定义为一种原始的模式或模型,从这种模式或模型中,所有其他的东西都被制造出来。在Maven中,原型是一个项目的模板,它与一些用户输入相结合,生成一个已经根据用户需求定制的工作Maven项目。我们将向你们展示原型机制是如何运作的,但是如果你们想了解更多关于原型的知识请参考我们对原型的介绍
创建您的第一个项目!为了创建最简单的Maven项目,从命令行执行以下命令:
mvn -B archetype:generate -DarchetypeGroupId=org.apache.maven.archetypes -DgroupId=com.mycompany.app -DartifactId=my-app
一旦您执行了这个命令,您就会注意到发生了一些事情。首先,您将注意到,为新项目创建了一个名为my-app的目录,这个目录包含一个名为pom的文件。xml应该是这样的:
<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/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.mycompany.app</groupId> <artifactId>my-app</artifactId> <packaging>jar</packaging> <version>1.0-SNAPSHOT</version> <name>Maven Quick Start Archetype</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency> </dependencies> </project>
pom.xml包含这个项目的项目对象模型(POM)。POM是Maven的基本工作单元。这一点很重要,因为Maven本身就是以项目为中心的,一切都围绕项目的概念进行。简而言之,POM包含了您的项目的每一个重要信息,并且本质上是一种一站式的搜索,可以找到与您的项目相关的任何东西。了解POM是很重要的,并且鼓励新用户参考POM的介绍。
2、Maven项目中的标签及其含义
这是一个非常简单的POM,但是仍然显示每个POM所包含的关键元素,所以让我们遍历它们,让您熟悉POM要点:
标签名称 | 标签含义 |
---|---|
project | 这是所有Maven pom.xml文件中的顶级元素。 |
modelVersion | 这个元素表示POM使用的对象模型的版本。模型本身的版本变化很少,但它是强制性的,以确保在Maven开发人员认为有必要更改模型时使用的稳定性。 |
groupId | 这个元素表示创建项目的组织或组的唯一标识符。groupId是项目的关键标识符之一,它通常基于组织的完全限定域名。例如org.apache.maven.plugins是所有Maven插件的指定的groupId。 |
artifactId | 此元素表示由该项目生成的主要工件的唯一基本名称。项目的主要工件通常是JAR文件。像源包这样的次要工件也使用artifactId作为其最终名称的一部分。一个由Maven产生的典型工件将具有这个形式-.(例如,myapp-1.0.jar)。 |
packaging | 这个元素表示这个工件所使用的包类型(例如JAR、WAR、EAR等)。这不仅意味着生成的工件是JAR、WAR或EAR,还可以指示作为构建过程的一部分使用的特定生命周期。(生命周期是我们将在指南中进一步讨论的主题。现在,请记住,项目的指示打包可以在定制构建生命周期中发挥一定的作用。)packaging元素的默认值是JAR,所以您不必为大多数项目指定这个值。 |
version | 此元素表示项目生成的工件的版本。Maven在帮助您进行版本管理方面有很长一段路要走,您经常会看到一个版本中的SNAPSHOT设计版本,这表明一个项目处于开发状态。我们将讨论快照的使用以及它们如何在本指南中进一步工作。 |
name | 这个元素表示项目使用的显示名称。这通常在Maven生成的文档中使用。 |
url | 这个元素指示项目的站点在哪里可以找到。这通常在Maven生成的文档中使用。 |
description | 这个元素提供了您的项目的基本描述。这通常在Maven生成的文档中使用。 |
关于在POM中使用哪些元素的完整参考资料,由于篇幅比较长,内容比较多,所以说我就不写下来了,直接上链接,如下:
Maven中使用的Maven项目描述符的引用
现在让我们回到手头的项目,在您的第一个项目的原型生成之后,您还会注意到以下目录结构已经创建:
my-app |-- pom.xml `-- src |-- main | `-- java | `-- com | `-- mycompany | `-- app | `-- App.java `-- test `-- java `-- com `-- mycompany `-- app `-- AppTest.java
正如您所看到的,从原型创建的项目有一个POM,一个用于您的应用程序源代码的源树,以及一个用于测试源的源树。这是Maven项目的标准布局(应用程序源位于
${basedir}/src/main/java中,测试源位于
${basedir}/src/test/java中,
${basedir}表示包含
pom.xml的目录)。
相关文章推荐
- [转]帝国cms目录结构与模板结构以及标签变量介绍
- [转]帝国cms目录结构与模板结构以及标签变量介绍
- maven项目的创建和maven项目的结构(目录)调整
- 16Python爬虫---Scrapy目录结构以及项目创建
- maven创建项目没有test resources目录结构
- maven 创建web项目的标准目录结构
- 初学Android 二 创建项目以及目录结构
- Maven项目目录结构与自动创建maven目录
- 02-maven常用命令,以及使用命令创建目录
- [错误日志]IDEA用maven创建web项目式构建目录结构错误
- 初识Maven(三):Maven项目的目录结构以及Maven的常用命令
- maven目录结构自动创建(命令行)
- intellij 创建maven项目的树形目录结构
- SSH-BOS项目相关配置文件以及目录结构创建
- Eclipse中创建标准web工程以及标准目录结构说明
- 创建Zigbee Z-Stack 3.0.1 BSP(二)--Z-Stack协议栈目录结构
- Eclipse maven webapp项目目录结构配置 java build path 出现问题
- Linux目录结构以及作用
- [转]JavaScript创建Applet 标签的属性介绍 以及 Applet调用JavaScript
- Maven配置2-使用Maven创建WEB项目支持Tomcat目录部署