当一个依赖项的scope被设置为“provided”时,这意味着在编译项目代码和执行测试时,这个依赖项是可用的。 被设置为 provided 是因为它主要是一个编译时工具,用来生成样板代码,如 getter、setter 方法等。一旦代码被编译,Lombok 的工作就完成了,运行时不再需要它。因此,在打包应用时,不需要将其包含在其中,因为它在运行时不是必需的。这就是为什么通常将其 scope 设置为 provided。
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.30</version>
<scope>provided</scope>
</dependency>
compile(默认):这是默认的依赖范围,表示该依赖在编译、运行时都可用,并且会被包含在项目的最终包中。
原文链接:https://blog.youkuaiyun.com/d905133872/article/details/135296073