Gluon:重复的 zip 条目

Gluon: Duplicate zip entry

当我尝试在 Gluon 应用程序中使用 Jersey(客户端)时,我遇到了这个确切的问题: https://bitbucket.org/javafxports/android/issues/68/proguard-complains-about-duplicate-classes

问题已标记为已解决。这是否意味着它应该工作(没有解决方法)?我的应用程序在 iPad 上运行(尽管有很多警告),只有在 Android 上尝试 运行 时才会出现问题。

目前,如果您尝试将相同的 class 添加到 dex 文件两次,android 任务将会失败。

如果您碰巧添加了一些依赖项来添加 rt.jar 中已有的任何 class,那将会失败。

通常,在添加 Jersey 依赖项时,javax.annotation classes 是从 javax.annotation-api-1.2.jar 添加的,而其中一些已经出现在 JDK.

如果您没有删除那些重复的 classes 的源代码,解决方案将从依赖项中排除一些组。

这对我有用,至少 运行 android 任务,但没有进一步测试真实案例:

dependencies {
    compile 'com.gluonhq:charm:2.2.0'
    compile ('org.glassfish.jersey.core:jersey-client:2.22.2') {
        exclude group: 'javax.annotation'
        exclude group: 'javax.inject'
    }

    androidRuntime 'com.gluonhq:charm-android:2.2.0'
    iosRuntime 'com.gluonhq:charm-ios:2.0.0'
    desktopRuntime 'com.gluonhq:charm-desktop:2.0.0'
}