相关疑难解决方法(0)

将 Gradle 和 Android Studio 更新到 3.5 后复制 Hamcrest 和 JUnit 类

更新到 Android Studio 3.5 gradle 后无法构建。原因是古老而众所周知的,但从来都不是整个构建失败的原因:Hamcrest 和 JUnit 的重复类。

在模块 hamcrest-core-1.1.jar (org.hamcrest:hamcrest-core:1.1) 和 junit-4.10.jar (junit:junit:4.10) 中发现重复的类 org.hamcrest.BaseMatcher

(还有更多的类)

关键是我从未听说过 Hamcrest 和 JUnit 大约在一年前甚至更长时间之前从我的项目中删除,正如您所看到的,错误描述中提到的 libs 版本也很旧。我能用这个做什么?

下面我将描述我所做的所有活动:

  1. 清理和重建项目,在项目中寻找 Hamcrest 和 JUnit 出现 - 什么都没有!

  2. 删除projecthome/.gradleprojecthome/.idea(结果 - 将它们的总大小从 67,5 MB 减少到 6 MB)。

    以下文件不断在“/.idea/libraries”文件夹中重新创建:

    Gradle__org_hamcrest_hamcrest_core_1_1_jar
    Gradle__junit_junit_4_10_jar
    
    Run Code Online (Sandbox Code Playgroud)
  3. 删除userhome/.gradle/caches(唯一的结果:将文件夹大小从 ~800 MB 减少到 323 MB)。

  4. 使 Android Studio 中的缓存/重启选项无效。

  5. 总共点 2-4。

  6. 降级到'com.android.tools.build:gradle:3.4.2'

一切都没有改变。请帮忙。

编辑:

org.gradle.execution.MultipleBuildFailures: Build completed with 1 failures.
at org.gradle.initialization.DefaultGradleLauncher$ExecuteTasks.run(DefaultGradleLauncher.java:386)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:402)
at …
Run Code Online (Sandbox Code Playgroud)

android gradle android-studio android-gradle-plugin

10
推荐指数
2
解决办法
4204
查看次数

升级android版本后,获取“重复类android.support.v4.app.INotificationSideChannel”

在android update 3.4之前,我的应用程序运行正常,但是在android升级后,我的应用程序出现合并错误:

"Duplicate class android.support.v4.app.INotificationSideChannel"

android update 3.4
upgrade gradle 5.1.1 
upgrade sdk

Error:
    Duplicate class android.support.v4.app.INotificationSideChannel found in modules classes.jar (androidx.core:core:1.0.0) and classes.jar (com.android.support:support-compat:28.0.0)
    Duplicate class android.support.v4.app.INotificationSideChannel$Stub found in modules classes.jar (androidx.core:core:1.0.0) and classes.jar (com.android.support:support-compat:28.0.0)
    Duplicate class android.support.v4.app.INotificationSideChannel$Stub$Proxy found in modules classes.jar (androidx.core:core:1.0.0) and classes.jar (com.android.support:support-compat:28.0.0)
    Duplicate class android.support.v4.graphics.drawable.IconCompatParcelizer found in modules classes.jar (androidx.core:core:1.0.0) and classes.jar (com.android.support:support-compat:28.0.0)
    Duplicate class android.support.v4.os.IResultReceiver found in modules classes.jar (androidx.core:core:1.0.0) and classes.jar (com.android.support:support-compat:28.0.0)
    Duplicate class android.support.v4.os.IResultReceiver$Stub found in modules classes.jar (androidx.core:core:1.0.0) and classes.jar …
Run Code Online (Sandbox Code Playgroud)

java android build.gradle android-gradle-plugin

7
推荐指数
2
解决办法
1万
查看次数

任务':app:checkDebugDuplicateClasses'的执行失败。Ionic4安卓

我目前正在处理ionic4应用程序,但是最近在向应用程序添加https://ionicframework.com/docs/native/fcm插件后,在android reall设备上构建该应用程序时,它停止了工作。

起初它抱怨结构密钥,但是我从来没有打算在我的应用程序上使用结构崩溃解决。

错误日志:

* What went wrong:
Execution failed for task ':app:checkDebugDuplicateClasses'.
> 1 exception was raised by workers:
  java.lang.RuntimeException: Duplicate class android.support.v4.app.INotificationSideChannel found in modules classes.jar (androidx.core:core:1.0.0) and classes.jar (com.android.support:support-compat:27.1.1)
  Duplicate class android.support.v4.app.INotificationSideChannel$Stub found in modules classes.jar (androidx.core:core:1.0.0) and classes.jar (com.android.support:support-compat:27.1.1)
  Duplicate class android.support.v4.app.INotificationSideChannel$Stub$Proxy found in modules classes.jar (androidx.core:core:1.0.0) and classes.jar (com.android.support:support-compat:27.1.1)
  Duplicate class android.support.v4.os.IResultReceiver found in modules classes.jar (androidx.core:core:1.0.0) and classes.jar (com.android.support:support-compat:27.1.1)
  Duplicate class android.support.v4.os.IResultReceiver$Stub found in modules classes.jar (androidx.core:core:1.0.0) and classes.jar (com.android.support:support-compat:27.1.1)
  Duplicate class …
Run Code Online (Sandbox Code Playgroud)

android cordova firebase ionic-framework cordova-plugin-fcm

7
推荐指数
6
解决办法
8780
查看次数

在以下模块中找到重复的类org.hamcrest.BaseDescription?如何解决?

在以下模块中找到了重复的类org.hamcrest.BaseDescription类:hamcrest-all-1.3.jar(org.hamcrest:hamcrest-all:1.3),hamcrest-core-1.3.jar(org.hamcrest:hamcrest-core:1.3)和mockito-all-2.0.2-beta.jar(org.mockito:mockito-all:2.0.2-beta)

implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'androidx.appcompat:appcompat:1.0.2'
implementation 'androidx.core:core-ktx:1.0.1'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'org.mockito:mockito-all:2.0.2-beta'
androidTestImplementation "org.hamcrest:hamcrest-all:1.3"
androidTestImplementation 'androidx.test:core:1.1.0'
androidTestImplementation 'androidx.test:rules:1.1.1'
androidTestImplementation 'androidx.test:runner:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1'
Run Code Online (Sandbox Code Playgroud)

hamcrest android-gradle-plugin

6
推荐指数
0
解决办法
612
查看次数