[Maven 基础课程]pom.xml

pom.xml 常见配置项

为了方便你入门,我总结了 pom.xml 中几个最常见、最重要的配置项,这些通常是你需要在项目中使用的。

项目坐标(GAV)

xml 复制代码
<groupId>com.example</groupId>
<artifactId>my-app</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>jar</packaging>

这部分定义了项目的唯一标识,是所有 Maven 项目的基石。

依赖管理(Dependencies)

xml 复制代码
<dependencies>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.7.32</version>
    </dependency>
    <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter-api</artifactId>
        <version>5.9.1</version>
        <scope>test</scope>
    </dependency>
</dependencies>

: 包含所有项目依赖的列表。

: 定义一个具体的依赖。

scope: 定义依赖的范围。test 表示该依赖只在测试阶段有效,不会被打包到最终的 JAR 包中。关于 scope 更详细的知识可以参考:https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html

我们找依赖一般去 maven 仓库找:https://mvnrepository.com/

属性(Properties)

xml 复制代码
<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>11</maven.compiler.source>
    <maven.compiler.target>11</maven.compiler.target>
    <slf4j.version>1.7.32</slf4j.version>
</properties>

这部分用于定义变量,方便统一管理版本号等配置,避免在多个地方重复硬编码。

构建配置(Build)

xml 复制代码
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.1</version>
            <configuration>
                <source>11</source>
                <target>11</target>
            </configuration>
        </plugin>
    </plugins>
</build>

: 配置项目构建相关的设置。

: 配置项目使用的 Maven 插件。

: 定义一个具体的插件,例如 maven-compiler-plugin。

: 用于对插件进行详细配置,比如指定 Java 编译版本。

pom.xml 的更多信息可以参考:https://maven.apache.org/guides/introduction/introduction-to-the-pom.html

相关推荐
ly76893 天前
XML 从入门到实践:语法、命名空间、XPath、XSD 与 Java 安全解析
xml·java·python
欧特克_Glodon6 天前
OpenCV计算机视觉开发入门与实践<十二>:XML 和 YAML 文件读写
xml·c++·opencv·计算机视觉
程序员-珍6 天前
安卓开发:同名 styles.xml 在不同分支/文件夹的合并规则
android·xml·前端
LitchiCheng9 天前
还在改xml调相机?MuJoCo交互式可视化调整相机安装位置
xml·数码相机
richard_yuu9 天前
JSON vs XML vs 二进制:3种序列化终极选型
xml·c++·qt·学习·json
秋田君11 天前
QT_XML文件操作
xml·数据库·qt
数据知道12 天前
XXE 漏洞深度实战:XML 外部实体攻击与 OOB 带外
xml·网络·安全·网络安全
云水一下12 天前
零基础玩转bWAPP靶场(四十七):XSS - Reflected (AJAX/XML)
xml·web安全·ajax·xss·bwapp
爱敲键盘的猴子14 天前
深入理解 Spring IoC -- 基于 XML 的 Bean 配置详解
xml·java·spring
前网易架构师-高司机15 天前
带标注的羽毛球运动员,裁判,羽毛球识别数据集,识别率84.4%,2879张图,支持yolo,coco json,voc xml,文末有模型训练代码
xml·yolo·json·数据集·羽毛球·裁判