如何解决D8警告:D8:找不到类型`org.conscrypt.Conscrypt`

问题描述 投票:12回答:4
/Volumes/SSD/.gradle/caches/modules-2/files-2.1/com.squareup.okhttp3/okhttp/3.10.0/7ef0f1d95bf4c0b3ba30bbae25e0e562b05cf75e/okhttp-3.10.0.jar: D8: Type `org.conscrypt.Conscrypt` was not found, it is required for default or static interface methods desugaring of `okhttp3.internal.platform.Platform okhttp3.internal.platform.ConscryptPlatform.buildIfSupported()`
okhttp3
4个回答
4
投票

我能够通过添加来解决问题:

-dontwarn okhttp3.internal.platform.ConscryptPlatform

proguard-rules.pro文件。


0
投票

根据https://github.com/square/okhttp/issues/3922的说法,忽略这些警告是安全的。

如果构建不成功,我想还有另一个问题。


0
投票

可能https://github.com/square/okhttp/issues/4604会有所帮助,但我没有尝试。

buildscript {
    ...
    repositories {
        ...
        maven {
            url 'http://storage.googleapis.com/r8-releases/raw'
        }
    }

    dependencies {
        classpath 'com.android.tools:r8:1.4.57'  // Must be before the Gradle Plugin for Android.
        classpath 'com.android.tools.build:gradle:3.3.1'  // You don't need to upgrade this to use a newer R8 version.
        ...
     }
}

在我的情况下,我添加了OkHttp库,它是Proguard规则。然后删除了库但忘记删除规则。如果你从proguard-rules.pro中删除了OkHttp,你可以从build.gradle评论或删除这些行:

### OkHttp.

# JSR 305 annotations are for embedding nullability information.
-dontwarn javax.annotation.**

# A resource is loaded with a relative path so the package of this class must be preserved.
-keepnames class okhttp3.internal.publicsuffix.PublicSuffixDatabase

# Animal Sniffer compileOnly dependency to ensure APIs are compatible with older versions of Java.
-dontwarn org.codehaus.mojo.animal_sniffer.*

# OkHttp platform used only on JVM and when Conscrypt dependency is available.
-dontwarn okhttp3.internal.platform.ConscryptPlatform

0
投票

来自./gradlew汇编

R8是新的Android代码缩小器。如果您遇到任何问题,请在https://issuetracker.google.com提交一个错误,使用'Shrinker(R8)'作为组件名称。您可以通过使用'android.enableR8 = false'更新gradle.properties来禁用R8。当前版本是:1.4.94(来自go / r8bot(luci-r8-ci-archive-0-5g74)的build 390954928f0db9c3b888a367f7f128ce3bbfb160)。

© www.soinside.com 2019 - 2024. All rights reserved.