Maven
是一个项目管理工具,可以对 Java
项目进行构建和管理依赖。
本文,我们认识下 pom.xml
文件。POM(Project Object Model, 项目对象模型)
是 Maven
工程的基本工作单位,也是 Maven
的核心。其包含项目的基本信息,用于描述项目如何构建、声明项目依赖等。
dependencies
在该元素下添加依赖,可以包含多个 依赖:
之间有三个标识:
- groupId: 定义隶属的实际项目
- artifactId: 定义项目中的一个模块
- version: 依赖或者项目的版本
org.springframework.boot
spring-boot-start-web
scope
如果在编译的时候需要而在发布的时候不需要的 JAR
包,则可以使用 scope
标签标记该包,并将值设置为 provided
。
junit
junit
3.8.1
test
- compile:
scope
的默认值,表示该依赖项目需要参与当前项目的编译、测试、运行阶段,是比较强的依赖。打包时也要包含进去。 - provided:上面提到👆
- runtime:会作用在运行和测试阶段。
- system:和
provided
相似,但是在系统中要以外部JAR
包的形式提供,Maven
不会在repository
中查找它。 - test:会作用在测试阶段。
properties
在 中自定义变量,方便在依赖配置时引用变量,可达到统一版本号的目的。比如:
1.8.0
8.0.0
通过 ${变量名}
来调用:
org.apache.solr
solr-solrj
${solr.version}
plugin
在创建 Spring Boot
项目的时,默认提供了 spring-boot-maven-plugin
插件。它提供打包时需要的信息,将 Spring Boot
应用打包为可执行的 JAR
或者 WAR
文件。
pom.xml
类比package.json
参考
- Maven POM
- 《Spring Boot 实战派》