繁体   English   中英

如何解决 Kotlin DSL 中的 DependencyResolutionManagement 警告

[英]How to resolve DependencyResolutionManagement warning in Kotlin DSL

我使用 Android Studio 版本 - Electric Eel创建了一个新的 Android 项目。 我试图将 gradle 脚本从groovy迁移到kotlin DSL ,遇到警告。

在之前版本的 Android Studio - Chipmunk上开发的最后一个项目中,脚本是干净的。 上一个项目和新项目之间的脚本是相等的。

我想以正确的方式删除警告消息而不是压制它们。 我知道注释( @Incubating )是什么意思。

这是settings.gradle.kts
评论是我遇到的警告。

pluginManagement {
    repositories {
        google()
        mavenCentral()
        gradlePluginPortal()
    }
}
dependencyResolutionManagement {
    // 'getRepositoriesMode()' is declared in unstable interface 'org.gradle.api.initialization.resolve.DependencyResolutionManagement' marked with @Incubating 
    // 'org.gradle.api.initialization.resolve.RepositoriesMode' is marked unstable with @Incubating 
    // 'FAIL_ON_PROJECT_REPOS' is declared in unstable enum 'org.gradle.api.initialization.resolve.RepositoriesMode' marked with @Incubating 
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)

    // 'repositories(org.gradle.api.Action<? super org.gradle.api.artifacts.dsl.RepositoryHandler>)' is declared in unstable interface 'org.gradle.api.initialization.resolve.DependencyResolutionManagement' marked with @Incubating 
    repositories {
        google()
        mavenCentral()
    }
}
rootProject.name = "MyNewProject"
include(":app")

我的 IDE、gradle、agp 版本:

  • IDE:电鳗(2022.1.1,Build #AI-221.6008.13.2211.9477386)

Android 工作室电鳗 | 2022.1.1
Build #AI-221.6008.13.2211.9477386,建于 2023 年 1 月 11 日
运行时版本:11.0.16+8-b2043.64 amd64
VM:JetBrains s.r.o 的 OpenJDK 64 位服务器 VM。
Windows 10 10.0
GC:G1年轻代,G1老年代

  • Gradle: 7.5
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip
  • 加速器: 7.4.0

(在build.gradle中,仍然与groovy

plugins {
    id 'com.android.application' version '7.4.0' apply false
    id 'com.android.library' version '7.4.0' apply false
    id 'org.jetbrains.kotlin.android' version '1.7.0' apply false
}

我仔细检查了两个 IDE 版本的检查设置不稳定的 API 使用选项都已启用。 选项包括正确的注释 - org.gradle.api.incubating

我认为电鳗版本解决了一个错误(实际上我不确定),但这并没有明确解决,直到他们发布稳定版 API 或其他方式......

现在我在每个 gradle 脚本的顶部添加了@file:Suppress("UnstableApiUsage")

设置-编辑器-检查-不稳定-API-使用

添加 @Suppress("UnstableApiUsage") 以暂时修复感兴趣的代码中的问题,例如

@Suppress("UnstableApiUsage")
    packagingOptions {
        resources {
            excludes += "/META-INF/{AL2.0,LGPL2.1}"
        }
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM