标签:compile provided provide 汇总 system maven 编译 scope tools
1、自建 starter 的一些关于 maven 的记录。
可以减小 jar 包的大小,不做依赖传递
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<!-- 依赖 传递 true, 不传递。 默认是false-->
<optional>true</optional>
</dependency>
控制 依赖的使用范围
常见的有 compile, provided, runtime, test, system 等
-
compile
- 默认值
-
test
- 仅参与测试环节,在编译、运行、打包时不会使用
-
runntime
- 适用于运行和测试环节
-
provided -已提供
- 在编译和测试的环境,和compile功能相似,但provide仅在编译和测试阶段生效,provide不会被打包,也不具有传递性。
-
system
-
同 provided,但是 依赖 从 本地 获取
-
结合systemPath 使用
-
<dependency> <groupId>sun.jdk</groupId> <artifactId>tools</artifactId> <version>1.5.0</version> <scope>system</scope> <systemPath>${java.home}/../lib/tools.jar</systemPath> </dependency>
-
参考:
https://zhuanlan.zhihu.com/p/325550529
标签:compile,provided,provide,汇总,system,maven,编译,scope,tools 来源: https://www.cnblogs.com/idea-persistence/p/16649621.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。