[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

相关推荐
北城以北88882 小时前
Java高级编程--XML
xml·java·开发语言·intellij-idea
l1t3 小时前
DeepSeek辅助编写的利用quick_xml把xml转为csv的rust程序
xml·开发语言·人工智能·rust·解析器·quick-xml
l1t3 小时前
how to build tbox xml into the demo
xml·linux·c语言·parser·tbox
搞全栈小苏17 小时前
基于Qt QML和C++的MQTT测试客户端(CMakeLists实现)
xml·c++·qt
fatiaozhang95271 天前
中国移动云电脑一体机-创维LB2004_瑞芯微RK3566_2G+32G_开启ADB ROOT安卓固件-方法3
android·xml·adb·电脑·电视盒子·刷机固件
l1t3 天前
轻量级XML读写库Mini-XML的编译和使用
xml·c语言·解析器
微笑伴你而行3 天前
标注格式转换csv转xml
xml
fatiaozhang95273 天前
中国移动中兴云电脑W132D-RK3528-2+32G-刷机固件包(非原机制作)
android·xml·电脑·电视盒子·刷机固件·机顶盒刷机
Ray Song3 天前
【FastDDS】XML profiles
xml·中间件·自动驾驶·dds·fastdds