pom文件的一般视图
项目的结构在 pom.xml 文件中描述,该文件必须位于项目的根文件夹中。项目文件的内容如下所示:
<project>
<!—当前项目的描述 -->
<groupId>...</groupId>
<artifactId>...</artifactId>
<packaging>...</packaging>
<version>... </ version>
<properties>
<!-- 属性部分 -->
</properties>
<repositories>
<!-- 存储库部分 -->
</repositories>
<dependencies>
<!-- 依赖项部分 -->
</ dependencies>
<build>
<!-- 构建部分 -->
</build>
</project>
<!—当前项目的描述 -->
<groupId>...</groupId>
<artifactId>...</artifactId>
<packaging>...</packaging>
<version>... </ version>
<properties>
<!-- 属性部分 -->
</properties>
<repositories>
<!-- 存储库部分 -->
</repositories>
<dependencies>
<!-- 依赖项部分 -->
</ dependencies>
<build>
<!-- 构建部分 -->
</build>
</project>
并非所有部分都可能出现在 pom.xml 描述中。所以通常不使用属性和存储库部分。需要当前项目的描述参数。我们现在将讨论最后一节。
构建部分
构建部分是可选的——Maven 可以在没有它的情况下构建项目。但是,如果您想组装一个或多或少复杂的项目,那么了解那里的一切工作原理将会派上用场。
让我们看一个简单的例子:
<build>
<finalName>projectName</finalName>
<sourceDirectory>${basedir}/src/java</sourceDirectory>
<outputDirectory>${basedir}/targetDir</outputDirectory> <资源> <
资源
>
<目录>${ basedir}/src/java/resources</directory>
<includes>
<include>**/*.properties</include>
</includes>
</resource>
</resources>
<plugins>
。. .
</插件>
</构建>
<finalName>projectName</finalName>
<sourceDirectory>${basedir}/src/java</sourceDirectory>
<outputDirectory>${basedir}/targetDir</outputDirectory> <资源> <
资源
>
<目录>${ basedir}/src/java/resources</directory>
<includes>
<include>**/*.properties</include>
</includes>
</resource>
</resources>
<plugins>
。. .
</插件>
</构建>
这部分包含构建的基本信息:Java 文件所在的位置、资源文件、使用的插件、构建的项目放在哪里。
主要有四个标签:
- <最终名称>
- <源目录>
- <输出目录>
- <资源>
我们简单分析一下他们的目的:
<finalName>标记指定在包阶段创建的结果构建文件(jar、war、ear..)的名称。如果未指定参数,则使用默认值artifactId-version。
<sourceDirectory>标签允许您重新定义源文件的位置。默认情况下,文件位于${basedir}/src/main/java目录中,但您可以指定任何其他位置。
<outputDirectory>标签指定编译器将保存编译结果的目录—— *.class文件。默认值为目标/类。
<resources>标签及其嵌套的<resource>标签定义了资源文件的位置。构建时,资源文件只是简单地复制到outputDirectory目录中。资源目录的默认值为src/main/resources。
组装部分可以特别灵活地配置。稍后我们将更详细地研究它。
GO TO FULL VERSION