springBoot的pom文件理解

springBoot的pom文件理解

<!-- 1.pom.xml含义-->
<!-- pom.xml是maven项目的核心配置文件,它是项目对象模型的缩写-->
<!-- pom定义了项目的所有属性,包括项目的名称、版本、依赖关系、构建配置等。-->
<!-- 使用pom.xml,我们可以轻松的管理项目的构建和依赖关系,让我们能够更专注于业务逻辑的开发-->
<!-- 2.pom.xml的结构-->
<!-- modelVersion指定了pom.xml文件使用的XML schema版本-->
<?xml version="1.0" encoding="UTF-8"?>
<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<!--    3.项目的基本信息-->
<!--    groupId:项目的组名,通常是反转的域名,比如com.example-->
<!--    artifactId:项目的唯一标识符,通常是项目的名称-->
<!--    version:项目的版本号-->
<!--    packaging:项目的打包方式.通常是jar,war,pom 默认是jar-->

<!--    name:项目名,提供项目的简短名称-->
<!--    description:项目描述,提供项目的详细描述-->
<!--    version:项目主页,提供项目的网址-->
<!--    licenses:许可证声明,声明项目所使用的一种或多种许可证-->
<!--    developers:开发证信息,列出项目的开发人员-->
<!--    url:项目主页,提供项目的网址-->

<!--    1.modules:当前项目的子项目-->
<!--    2.parent用于声明当前项目的父项目-->
<!--    3.scm:软件配置管理-->
<!--    4.properties:作用:-->
<!--    1.统一管理项目中的常用属性,比如版本号,路径,插件版本等,方便统一修改和管理-->
<!--    2.可以在配置过程中使用${...}占位符引用这些属性,使得配置更加灵活和便捷-->
<!--    3.避免硬编码,提高代码的可维护性和可读性-->
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.3.2.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.lagou.kafka.demo</groupId>
    <artifactId>demo-02-springboot-kafka</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>demo-02-springboot-kafka</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.kafka</groupId>
            <artifactId>spring-kafka</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.springframework.kafka</groupId>
            <artifactId>spring-kafka-test</artifactId>
            <scope>test</scope>
<!--        <scop>:指定依赖项在项目中的使用范围
            compile:默认的scope,表示该依赖在编译、测试、运行时均需要使用
            provided:表示该依赖库只在编译和测试时需要使用,而在运行时已经被系统或者容器提供,所以不需要打包到最终的应用程序中
            runtime:表示该依赖库只在运行时需要使用
            test:表示该依赖库只在测试时需要使用
            比如junit这个在测试中使用就可以了,其他时候不需要就可以用test-->
        </dependency>
    </dependencies>
<!--    build用于定义项目的构建配置,包括源代码目录,资源目录,插件等-->
    <build>
        <!--|--src
        |--main
        |--java  // Java主源代码目录
        --resources // 资源文件目录
        |--test
        --java // 测试主代码目录
        |--resources // 测试资源文件目录-->
        <sourceDirectory>src/main/java</sourceDirectory>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
            </resource>
        </resources>
<!--        plugins的作用是定义maven插件,plugins主要用于扩展maven功能,帮助开发人员更方便的构建、打包、发布项目
            插件可以通过maven的插件中心或者自己构建的私有仓库来使用,能在构建过程中执行特定的任务,比如编译、打包、测试等。-->

<!--        插件的配置可以分为两种方式:全局配置和项目配置。全局配置是在maven安装目录下的
            conf/settings.xml文件中进行配置,可以被所有的项目使用。项目配置则是在项目的pom.xml文件中进行配置,只对当前项目生效-->
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>${spring-boot.version}</version>
                <configuration>
                    <mainClass>com.lagou.kafka.demo.Demo02SpringbootKafkaApplication</mainClass>
<!--                    <includeSystemScope>元素设置为true,以确保在依赖项解析过程中包括system作用域的依赖项。-->
<!--                    <includeSystemScope>true</includeSystemScope>-->
                </configuration>
            </plugin>
            <!--常用的编译功能的插件-->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.1</version>
                <!--这个配置最好不要添加,否则install的时候很慢-->
                <configuration>
                    <!--指定Java源代码的版本-->
                    <source>1.8</source>
                    <!--指定编译后的字节码版本-->
                    <target>1.8</target>
                    <!--指定源代码的编码格式-->
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sun_lianShuang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值