java web

Maven配置(pom.xml)

2020-07-03  本文已影响0人  loserwang_3030

Maven 教程
Maven 是一个项目管理工具,可以对 Java 项目进行构建、依赖管理。

1. maven中的坐标和仓库

1.1 坐标

maven中构件通过坐标作为其唯一标识

<dependency>
                <!---相当于一个坐标--->
        <groupId>com.hongshun.maven01</groupId> <!--推荐:公司网站反写+项目名  -->
        <artifactId>maven01-model</artifactId> <!--推荐:项目名-模块名  -->
        <version>0.0.1SNAPSHOT</version>
 </dependency>

1.2 仓库

2. Pom.xml解析

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">
    <!-- 指定当前pom的版本 -->
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.hongshun.maven02</groupId>
    <artifactId>maven02-maven</artifactId>
    <!--
      大版本号.分支版本号.小版本号
      snapshot快照
      alpha内部测试
      beta公测
      release稳定
      GA正式发布
    -->
    <version>0.0.1SNAPSHOT</version>
    <!--
       打包方式,默认是jar
        war zip pom
    -->
    <packaging></packaging>

    <dependencies>
        <dependency>
            <groupId></groupId>
            <artifactId ></artifactId >
            <version><version>
            <!-- 可选 -->
            <type></type>
            <scope>test</scope>
            <!--设置依赖是否可选-->
            <optional></optional>
            <!--排除依赖传递列表-->
            <exclusions></exclusions>
        </dependency>
    </dependencies>
    
   <!---项目描述名-->
    <name></name>
    <!-- 项目地址 -->
    <url></url>
    <!-- 项目描述 -->
    <description></description>
    <developers></developers>
    <licenses></licenses>
    <organization></organization>
</project>

3. maven常用的构建命令

mvn compile编译的过程中,发现import就会到pom.xml文件中查找是否有该包的坐标。如果本地仓库中有,直接引入。如果没有,就会去网上maven的中央仓库中查找。

4. Maven生命周期

4.1 生命周期

Maven 有以下三个标准的生命周期:

4.2 clean 清理项目

4.3 build构建项目

compile、test、package、install

4.4 site 生成项目站点

5. Maven插件(待进一步整理)

每个生命周期中都包含着一系列的阶段(phase)。这些 phase 就相当于 Maven 提供的统一的接口,然后这些 phase 的实现由 Maven 的插件来完成。我们在输入 mvn 命令的时候 比如 mvn clean,clean 对应的就是 Clean 生命周期中的 clean 阶段。但是 clean 的具体操作是由 maven-clean-plugin 来实现的。所以说 Maven 生命周期的每一个阶段的具体实现都是由 Maven 插件实现的。

maven自动创建目录骨架

Maven 提倡使用一个共同的标准目录结构,Maven 使用约定优于配置的原则。只需要按照约定的目录建立项目即可。

创建目录的两种方式:

  1. archetype:generate 按照提示进行选择
  2. archetype:generate -DgroupId = 组织名(公司网站反写+项目名) -DartifactId=项目名-模块名 -Dversion=版本号 -Dpackage=代码所存在的包

依赖

依赖范围

依赖传递

依赖冲突

聚合和继承

Maven [ERROR] 不再支持源选项 5。请使用 6 或更高版本

在pom.xml中加入本地jdk的版本:

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>10</maven.compiler.source>
    <maven.compiler.target>10</maven.compiler.target>
</properties>
上一篇 下一篇

猜你喜欢

热点阅读