有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在两个不同的依赖性问题中使用相同的接口

我对依赖关系有冲突问题

我的项目有两个类似的依赖项:

dependencies {

  provided group: 'javax.servlet', name: 'javax.servlet-api', version: '3.1.0'

  compile files('path/to/ABC.jar')

}

ABC.jarjavax.servlet:servlet-api有自己的依赖性:

dependencies {

  provided group: 'javax.servlet', name: 'servlet-api', version: '2.5'

}

这就是我正在处理的问题;我需要使用ServletContext接口,该接口由servlet api库提供,编译器使用了错误的接口

Gradle自动解决版本冲突,如here所述

但在我的例子中,它没有帮助,因为它只在依赖项有两个不同版本时才起作用。在这种情况下;虽然这是一个较新的版本,但名称已从javax.servlet:servlet-api更改为javax.servlet:javax.servlet-api。所以gradle不会自动解决这个冲突,因为它似乎不是一个版本问题

我试着使用排除传递依赖,如here所述

compile files('path/to/ABC.jar') {
    exclude group: 'javax.servlet'
}

但它不起作用,似乎exclude在本地“jar”文件上不起作用

现在,我不知道还能做什么

如何排除作为本地文件添加的依赖项的依赖项

(如果第一个问题还没有答案)我如何告诉编译器使用正确的ServletContext接口


共 (0) 个答案