maven中的scope

maven中的scope表示的是标签指定的插件或者依赖,在maven项目生命周期的哪个部分有效。 可用的取值包括以下几个:

  • compile: 默认取值,在项目的编译,打包,运行,测试阶段均有效。

  • provided: 在编译和测试阶段有效,在最后运行的时候不会被加入。例如:在Java Web项目中使用了Servlet的API依赖, 编译时是必然要加入这些依赖的,但是,在运行的时候, 由于web容器内本身包含了Servlet的API,这些依赖不会被加入进去,否则就会产生冲突。

  • runtime: 在项目运行或者测试时候引入,典型的是:JDBC。只有在运行或者测试的时候才用得到。

  • test: 只有在测试的时候有效

  • System:与系统相关,移植性差,基本不会使用。

  • import:导入的范围。只使用在dependencyManagement中,表示从其他pom文件中导入dependency的配置。

image.png

在项目B中,引入项目A中的pom文件中的依赖。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容