pom文件

<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <!-- 指定了xml的版本和编码方式,project的标签是该文件的根元素,它声明了pom相关的命名空间-->

    <!-- pom版本,maven3对应pom版本为4.0.0 -->
    <modelVersion>4.0.0</modelVersion>

    <!-- groupld/artifactld/version根据这3个标签可以在Maven仓库中唯一确定所依赖Jar-->
    <groupId>com.wangshaner</groupId> <!-- 代表公司、组织名称,一般为域名倒写 -->
    <artifactId>hello-world</artifactId> <!-- 项目中全局唯一ID -->
    <version>0.0.1-SNAPSHOT</version> <!-- 该项目版本 -->

    <!-- 默认打包方式为jar -->
    <packaging>jar</packaging>

    <!-- 项目名,项目简介 -->
    <name>hello-world</name>
    <description>Demo project for Spring Boot</description>

    <!-- properties标签用于声明一些常量,如Java版本为1.8, fastjson版本为1.2.60-->
    <properties>
        <spring-cloud.version>Greenwich.SR1</spring-cloud.version>
        <spring-boot.version>2.1.3.RELEASE</spring-boot.version>
    </properties>

    <!-- parent标签用于指定父pom -->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>l.5.3.RELEASE</version>
        <relativePath/> <!--lookup parent from repository -->
    </parent>

    <!-- dependencies标签为依赖的根元素,dependency里具体为各个依赖Jar的3个坐标.
         version可以缺省,如果缺省就会默认为最新发布的版本. -->
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
        </dependency>

        <!-- 打war包时加入此项,表示spring-boot-tomcat相关jar包用外部的,不要打进去 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope><!-- 因为provided表明该包只在编译和测试的时候用 -->
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <!-- 项目顶层的POM文件中,通过它来管理jar包的版本,让子项目中引用一个依赖而不用显示
    的列出版本号.Maven会沿着父子层次向上走,直到找到一个拥有dependencyManagement元素的项目,
    然后它就会使用在这个dependencyManagement元素中指定的版本号 -->
    <dependencyManagement>
        <dependencies>
            <dependency>
                <!-- Import dependency management from Spring Boot -->
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>${spring-boot.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring-cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <!-- build为构建标签,它可以包含plugins(插件)标签, plugins标签中可以包含若干个plugin标签,
    可以根据项目的需求添加相应的plugin.spring-boot-maven-plugin插件:当运行"mvn package"进行打包时,
    会打包成一个可以直接运行的JAR文件,使用"java -jar"命令可以直接运行 -->
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>

            <!-- <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>3.0.0</version>
                <configuration>
                    <failOnMissingWebXml>false</failOnMissingWebXml>
                </configuration>
            </plugin> -->
        </plugins>
    </build>
</project>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容