Android gradle 打包选项 pickFirst 和排除不起作用

eas*_*ter 7 android packaging duplicates gradle apk

EclipseLink jar 包含一些 JPA 类。Android 构建 APK 失败:

Error:Execution failed for  
task ':app:transformClassesWithJarMergingForDebug'.
> com.android.build.api.transform.TransformException: 
java.util.zip.ZipException: duplicate entry: javax/persistence/Access.class
Run Code Online (Sandbox Code Playgroud)

尝试了排除和 pickFirst 如下

packagingOptions {

    exclude 'javax/persistence/**'
}


packagingOptions {

     pickFirst 'javax/persistence/**'
}

packagingOptions {

     pickFirst 'javax/persistence/Access.class'
}
Run Code Online (Sandbox Code Playgroud)

他们都没有工作。

3c7*_*c71 3

出于同样的要求,我花了很长时间寻找解决方案。

不幸的是,在撰写本文时,这些选项仅适用于应用程序模块!它们在库模块中没有任何影响。

您必须将这些选项复制到所有最终应用程序模块中。