java – 具有相同名称的Android gradle模块

前端之家收集整理的这篇文章主要介绍了java – 具有相同名称的Android gradle模块前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在开发一个使用以下依赖项的 Android项目:
<dependency>
        <groupId>org.glassfish.jersey.core</groupId>
        <artifactId>jersey-client</artifactId>
        <version>2.17</version>
    </dependency>

但是,此依赖关系具有模块javax / inject的2个定义,如gradle依赖关系树中所示:

+--- org.glassfish.jersey.core:jersey-client:2.17
 |    +--- org.glassfish.jersey.core:jersey-common:2.17
 |    |    +--- org.glassfish.hk2:hk2-api:2.4.0-b10
 |    |    |    +--- javax.inject:javax.inject:1
 |    |    +--- org.glassfish.hk2.external:javax.inject:2.4.0-b10

在尝试运行Android应用程序时,我收到错误

com.android.dex.DexException: Multiple dex files define L/javax/inject/Inject

我已经尝试排除这些模块中的任何一个,但这不起作用,因为依赖关系依赖于它们来进行方法调用.

有没有其他解决方案来解决这个冲突?

解决方法

我正在使用gradle并遇到同样的问题并根据 this的答案解决了它
compile ('org.glassfish.jersey.containers:jersey-container-servlet:2.14'){
    exclude module: 'javax.inject'
}
compile 'org.glassfish.hk2.external:javax.inject:2.4.0-b06'
原文链接:https://www.f2er.com/android/129570.html

猜你在找的Android相关文章