Maven 父工程 dependencyManagement 管理依赖
Maven About 2,785 wordsdependencyManagement
dependencyManagement
中声明的dependencies
不会被打包到最终的jar
包或war
包中,只是起到管理依赖的作用。
父工程 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">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>my-maven-parent</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<properties>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
<spring-boot.version>2.6.7</spring-boot.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>${spring-boot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
</project>
子工程
子工程可以省略groupId
,表示和父工程同样的group
(也可以与父工程不一致,需填写指定groupId
)。
子工程dependency
中可以省略version
,因为在父工程中已经定义了相关依赖的版本。
此处的lombok
虽然在父工程的pom.xml
中没有显示声明,但因为在spring-boot-dependencies
中已经定义了lombok
的版本,所以父工程继承了spring-boot-dependencies
中声明的依赖,故子工程可以不用添加版本字段。
子工程也可以指定版本号,将以子工程指定的版本号为主。遵循最短路径原则。
<?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">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.example</groupId>
<artifactId>my-maven-parent</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<artifactId>my-maven-sub1</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
</project>
Views: 1,346 · Posted: 2023-04-05
————        END        ————
Give me a Star, Thanks:)
https://github.com/fendoudebb/LiteNote扫描下方二维码关注公众号和小程序↓↓↓
Loading...