Maven依赖中的scope
scope是限制Dependency的作用范围的, 影响maven项目在各个生命周期时导入的package的状态。
1、compile(默认的)是在编译和打包时都会将依赖存储进去。
2、provided在编译和测试过程中有效,最后生成的war包时不会加入 。
例如:servlet-api,因为servlet-api tomcat服务器已经存在了,如果再打包发生冲突。
复制XML<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.1</version>
<scope>provided</scope>
</dependency>
- 1
- 2
- 3
- 4
- 5
- 6
3、runtime在运行时候依赖,在编译时候不依赖。
4、test是指测试范围有效,在编译和打包时都不会使用这个依赖。