![](/img/trans.png)
[英]How to exclude the library from Maven if I do not see it in the dependency tree?
[英]How do I read a Maven dependency tree
我在pom.xml中提供了servlet-api版本2.5作为范围。 这是依赖项的一部分:我的项目的树输出。 “从2.3管理的版本;从编译管理的范围”是什么意思?
[INFO] +- commons-logging:commons-logging:jar:1.1:compile
[INFO] | \- javax.servlet:servlet-api:jar:2.5:provided (version managed from 2.3; scope managed from compile)
这是否意味着我的类路径上版本2.3存在一些传递依赖? 我的WAR文件根本没有servlet-api jar,但是我确实使用了旧版本的Spring 2.5.4。 我怀疑Spring框架依赖于servlet-api 2.3。
该消息基本上意味着servlet-api的version
可以传递2.3(因此基本上在commons-logging的pom中它们定义了版本为2.3的servlet-api),但是版本2.5在你的项目中被特别要求,所以这就是被使用了。
范围也是如此。 在共享记录的POM它与范围定义compile
,但你必须将其与范围定义的provided
,所以又是被使用的范围。
这意味着您的项目已从其他依赖项覆盖了version
和scope
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.