android - 在 gradle 中排除支持 v4 以删除重复但得到 java.lang.NoClassDefFoundError : android. support.v7.app.AppCompatDelegateImplV14

标签 android android-gradle-plugin android-appcompat

我有一个基于 eclipse 的旧项目,我将其转换为基于 android studio 的项目。转换成功,但我在添加其他依赖项时遇到问题,首先我得到错误 java.exe finished with non-zero exit value 2,因为重复依赖支持 v4,我尝试排除模块支持v4,但现在我收到 java.lang.NoClassDefFoundError: android.support.v7.app.AppCompatDelegateImplV14 这是我的 build.gradle:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile project(':SlidingMenu')
    compile project(':PhotoView')
    compile project(':viewpager')
    compile project(':StackBlur')
    compile project(':FacebookSDK')
    compile files('libs/LibAllShareInterface_2.0.0.jar')

//        Exclude module support-v4 to remove duplicate
    compile ('com.android.support:appcompat-v7:22.2.0') { exclude module: 'support-v4' }
    compile('com.android.support:design:22.2.0') { exclude module: 'support-v4' }
    compile('com.squareup.picasso:picasso:2.5.2') { exclude module: 'support-v4' }
    compile('com.android.support:recyclerview-v7:21.0.0') { exclude module: 'support-v4' }
    compile('com.android.support:cardview-v7:22.2.0') { exclude module: 'support-v4' }
    compile('com.android.support:support-annotations:22.2.0') { exclude module: 'support-v4' }

}

任何帮助将不胜感激

最佳答案

虽然我不是 gradle 专家而且我自己也遇到了一些问题,但我能够使用您的依赖项重现提示 appcompat-v4 的错误。

您似乎完全从所有依赖项中排除了 support-v4,并且由于需要 support-v4,因此您必须将其单独指定为依赖项,或者更改此设置:

compile ('com.android.support:appcompat-v7:22.2.0') { exclude module: 'support-v4' }

为此:

compile ('com.android.support:appcompat-v7:22.2.0')

因此您不会从您的项目中完全排除 support-v4。

我做了第二个,项目可以构建(一个示例项目,只定义了那些依赖项)。

关于android - 在 gradle 中排除支持 v4 以删除重复但得到 java.lang.NoClassDefFoundError : android. support.v7.app.AppCompatDelegateImplV14,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30934102/

相关文章:

java - Android studio,这不是从共享首选项中检索字符串并将其转换为 hashset<string> 的正确方法吗?

Android:编译要在可绘制文件夹之外使用的 9 补丁文件?

xml - 尝试在 ANDROID 资源中使用 &lt;!ENTITY,错误为 : "The entity was referenced, but not declared."

Android support-v7 appcompat v22 Android 4 中的按钮样式和工具栏问题

android - 如何创建类似 AppCompat AlertDialog Button 的按钮?

android - Vector Drawables 与 RAM 方面的位图 (Android)

android - 在 kivy 应用程序中包含第三方模块时出错

android - 错误 : Failed to resolve: espresso-core and ERROR: Failed to resolve: runner

安卓 Stripe 集成

android - 回收站 View : How to simulate ListView's draw selector on top?