2024-02-10 11:17:32
Maven的pom.xml文件是项目构建的核心配置文件,通过标签定义项目结构、依赖、构建行为等。以下是关键标签的详细分类与说明:
1. 基础信息标签描述项目的基本信息,是每个pom.xml的必备部分:
示例:
<groupId>com.example</groupId><artifactId>my-app</artifactId><version>1.0.0-SNAPSHOT</version><packaging>jar</packaging><name>My Application</name><description>A sample Maven project</description><url>控制项目依赖的外部库及其版本:
<groupId>、<artifactId>、<version>
<scope>:依赖作用范围,常见值:
compile(默认):编译、测试、运行均有效。
test:仅测试有效(如JUnit)。
provided:编译和测试有效,运行时由JDK或容器提供(如Servlet API)。
runtime:运行时需要(如JDBC驱动)。
system:类似provided,需指定本地路径(不推荐)。
示例:
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.13.2</version> <scope>test</scope> </dependency></dependencies>3. 构建配置标签定义编译、资源处理、插件等构建行为:
插件配置示例:
<build> <sourceDirectory>src/main/java</sourceDirectory> <resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> </resource> </resources> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.11.0</version> <configuration> <source>11</source> <target>11</target> </configuration> </plugin> </plugins> <finalName>myapp</finalName></build>4. 父项目与模块管理适用于多模块项目或统一父配置:
示例:
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>3.1.0</version> <relativePath/></parent><modules> <module>my-app-common</module> <module>my-app-service</module></modules>关键注意事项掌握这些核心标签后,可灵活控制Maven项目的结构与行为。