Maven依赖范围

依赖范围(Scope) 对于主代码classpath有效 对于测试代码classpath有效 被打包,对于运行时classpath有效 例子
compile Y Y Y log4j
test - Y - junit
provided Y Y - servlet-api、jsp-api
runtime - - Y JDBC Driver Implementation
  1. compile: 默认编译依赖范围。对于编译,测试,运行三种classpath都有效

  2. test:测试依赖范围。只对于测试classpath有效

  3. provided:已提供依赖范围。对于编译,测试的classpath都有效,但对于运行无效。因为由容器已经提供,例如servlet-api、jsp-api(tomcat lib中自带的那些,防冲突)

  4. runtime:运行时提供。例如:jdbc驱动

你可能感兴趣的:(Maven)