Maven - 【POM】 pom.xml

pom.xml

  • XML前缀
  • modelversion
  • gav
  • packaging
    • jar
    • war
  • build
    • plugins
      • plugin
        • gav
  • dependencies
    • dependency
      • gavs
  • properties
  • Servlet程序依赖

一:XML前缀

<h:table xmlns:h="http://www.w3school.com.cn/hhh">
   <h:tr>
   <h:td>AAA</h:td>
   <h:td>BBB</h:td>
   </h:tr>
</h:table>
<f:table xmlns:f="http://www.w3school.com.cn/fff">
   <f:name>Table</f:name>
   <f:width>1024</f:width>
   <f:length>768</f:length>
</f:table>

xmlns使得XML中的跨文件被指定调用,而不会混乱,只需要指定namespace即可;

<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">

这里xmlns:xsi需要和xsi:schemaLocation一起使用

  • xsi:schemaLocation属性可以将指定xsd约束文件引入当前XML,引入后这些约束将作用于当前XML文件中的哪些标签呢?

  • 第一个参数指定了引入的约束文件将要作用的namespace,而xmlns属性规定了project标签默认的namespace为"http://maven.apache.org/POM/4.0.0",这时候产生了三个指向关系:

在这里插入图片描述

  • xmlns:xsi属性定义了当前XML文件中使用xsi前缀修饰的标签/属性的命名空间:

在这里插入图片描述

二:modelVersion

<modelVersion>4.0.0</modelVersion>
  • 作用一(找到对应4.0.0版本的父类pom-4.0.0.xml)

    在这里插入图片描述

  • 作用二(匹配4.0.0版本的xsd约束文件: xml_schema_defination)

    在这里插入图片描述

三:GAV

<groupId>xyz.xx</groupId>
<artifactId>MavenTest1</artifactId>
<!-- SNAPSHOT - 快照版 -->
<!-- 缺省 - 一般版 -->
<!-- RELEASE - 发行版 -->
<version>1.0-SNAPSHOT</version>

四:plugin

    <!-- jdk1.8配置 -->
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.5.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>3.0.0</version>
            </plugin>
        </plugins>
    </build>

五:dependency

<!-- junit依赖 -->
<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.13</version>
        <scope>test</scope>
    </dependency>
</dependencies>

六:properties

<!-- maven项目编码属性配置 -->
<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <maven.compiler.encoding>UTF-8</maven.compiler.encoding>
</properties>

七:Servlet程序依赖

  • lombok
  • jstl
  • servlet
    <dependencies>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>4.0.1</version>
            <scope>provided</scope>
        </dependency>

        <!-- https://mvnrepository.com/artifact/javax.servlet.jsp/javax.servlet.jsp-api -->
        <dependency>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>javax.servlet.jsp-api</artifactId>
            <version>2.3.3</version>
            <scope>provided</scope>
        </dependency>

        <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.16</version>
            <scope>provided</scope>
        </dependency>


        <!-- https://mvnrepository.com/artifact/org.apache.taglibs/taglibs-standard-impl -->
        <dependency>
            <groupId>org.apache.taglibs</groupId>
            <artifactId>taglibs-standard-impl</artifactId>
            <version>1.2.5</version>
            <scope>compile</scope>
        </dependency>

        <!-- https://mvnrepository.com/artifact/org.apache.taglibs/taglibs-standard-spec -->
        <dependency>
            <groupId>org.apache.taglibs</groupId>
            <artifactId>taglibs-standard-spec</artifactId>
            <version>1.2.5</version>
            <scope>compile</scope>
        </dependency>
    </dependencies>
已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 点我我会动 设计师:白松林 返回首页
实付 49.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值