我与依赖关系存在冲突问题。2个不同依赖项问题中的相同界面
我的项目有两个依赖关系是这样的:
dependencies {
provided group: 'javax.servlet', name: 'javax.servlet-api', version: '3.1.0'
compile files('path/to/ABC.jar')
}
ABC.jar
有它自己的依赖关系:
dependencies {
provided group: 'javax.servlet', name: 'servlet-api', version: '2.5'
}
这里是我处理这个问题;我需要使用ServletContext
接口,它由servlet-api库提供,编译器使用错误的接口。
Gradle按照here所述自动解决版本冲突。
但在我的情况下,它并没有帮助,因为它只适用于依赖项有两个不同的版本。在这种情况下;虽然这是一个较新的版本问题,但名称已从更改为javax.servlet:javax.servlet-api
。所以Gradle不会自动解决这个冲突,因为它似乎不是一个版本问题。
我试过的东西是用here所描述的排除传递依赖。
compile files('path/to/ABC.jar') {
exclude group: 'javax.servlet'
}
但它没有工作,似乎exclude
不适用于本地'jar'文件。
现在,我不知道还有什么要做。
如何排除作为本地文件添加的依赖项的依赖关系?
(如果第一个问题还没有任何答案)我怎么能说编译器使用正确的ServletContext
接口?