您的位置:首页 > 其它

Maven的创建、标签以及目录结构

2018-01-02 21:41 176 查看
1、创建第一个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生成的文档中使用。
3、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
的目录)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息