仅从 android 0 --min-api 26 开始支持 Invoke-customs

Invoke-customs are only supported starting with android 0 --min-api 26

提问人:Rona Idea 提问时间:4/18/2018 最后编辑:adrisonsRona Idea 更新时间:6/7/2023 访问量:278020

问:

在我使用构建版本 gradle 26 之前,但是 将 buildtoolsversion 更改为 27 后,如下图所示

我最近正在使用 android studio 4.2.2,我更新了我所有的依赖项 和

      sourceCompatibility JavaVersion.VERSION_1_10
      targetCompatibility JavaVersion.VERSION_1_10

compileOptions {
           sourceCompatibility kotlin_version
           targetCompatibility kotlin_version
         }

更新后,我收到此错误,请帮忙

错误: 错误构建 gradle 屏幕截图

安卓 android-studio android-gradle-插件

评论

84赞 Robert 4/18/2018
不要附加带有代码/错误消息的屏幕截图/图像。发布实际(相关)代码 + 错误消息。
1赞 Gillis Haasnoot 5/24/2018
当我将内联回调转换为 lambda 函数时,我开始遇到类似的问题。Intellj在问它。但是编译器不喜欢它。
6赞 Thomas Carlisle 9/19/2018
遗憾的是,OP 没有回来并将答案标记为正确,即使有一个答案。实际上,这三个都是,这取决于您使用的是 java 7、8 还是 10。最重要的是,您需要告知构建您正在使用的语言级别。是的,屏幕上的屏幕帽在页面上几乎不可读。
1赞 John Rasor 2/28/2019
这对我不起作用。但是将它添加到模块的 build.gradle 中确实有效。参见 Galley 12 月 19 日的评论。项目 github.com/jrasor/ftc_5197all2019;module 的数据类型为 TeamCode。
2赞 EJoshuaS - Stand with Ukraine 3/31/2019
代码的图像没有帮助。此外,异常的图像也无济于事。

答:

2386赞 Obakeng Molebatsi 5/6/2018 #1

经过几个小时的挣扎,我通过在 app/build.gradle 中包含以下内容解决了这个问题:

android {
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

https://github.com/mapbox/mapbox-gl-native/issues/11378

评论

4赞 avalancha 8/9/2018
当 gradle 构建说它在另一个模块中失败时,情况似乎也是如此。如果模块 A 有声明但 B 没有,有时对我来说它在 A 中失败了。我将其添加到 B 后,它不再失败
164赞 Zeeshan 3/29/2019
Android Studio 开发者需要更改此错误说明。这说明什么也说不出来。非常感谢您分享您的发现。你节省了别人的时间。Error: Invoke-customs are only supported starting with Android O (--min-api 26)
3赞 Saeid Z 6/9/2019
将 apachi commons lang 库添加到项目后,我遇到了这个错误。然后在添加上面的代码后修复了我的错误。谢谢。
1赞 Ümañg ßürmån 5/24/2020
等!!如何在 Android Studio 中将其设为默认值。我不想在我创建的每个项目中都使用它。
1赞 Branddd 11/16/2020
谢谢你。但是有谁知道为什么会这样?
30赞 Nata Sturza 8/5/2018 #2

就我而言,错误仍然存在,因为我的系统使用了升级的 Java。 如果您使用的是 Java 10,请修改 compileOptions:

compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_10
    targetCompatibility JavaVersion.VERSION_1_10

}

评论

16赞 kassim 2/8/2019
等。。我们可以将 Java 10 作为 Android 开发的目标吗?
6赞 Lucem 3/19/2019
是,@kassim版本以查看其他版本ctrl click
24赞 Chirag Patel 9/18/2018 #3

如果您有 Java 7,请在您的应用级别包含以下代码片段:build.gradle

compileOptions {

    sourceCompatibility JavaVersion.VERSION_1_7
    targetCompatibility JavaVersion.VERSION_1_7

}

评论

4赞 Pascal Chardon 7/18/2020
还需要根据错误消息中报告的 min api 设置 minSdkVersiontargetSdkVersion。 : defaultConfig { applicationId “com.mypack.myapp” minSdkVersion 26 targetSdkVersion 29 versionCode 1 versionName “1.0” ... }build.gradle
0赞 Elletlar 11/24/2020
在 Java 8 中使用了相同的解决方案,更改为:VERSION_1_8。
0赞 Aqif 7/30/2021
compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } 转到 build.gradle 并添加此文件
53赞 Roshni Kyada 10/31/2018 #4

如果 compileOptions 不起作用,请尝试此操作

禁用“即时运行”。

Android Studio -> -> -> -> -> 禁用复选框 File Settings Build, Execution, DeploymentInstant Run

评论

7赞 AlexVPerl 3/27/2019
这个,也只有这个对我有用。非常烦人,因为这似乎是 Android Studio 中的一个错误。即时运行是一个必要的功能 - 有人知道如何解决这个错误并使用即时运行吗?
3赞 Rubén Viguera 4/23/2019
Instant Run 是一个令人头疼的问题。我无法计算由于这个对节省时间工具不太有用的工具而损失了多少时间。我总是在我所有的项目中禁用它。我认为没有那么多需要。
3赞 Henrique 4/24/2019
更新到 Android Studio 3.4 和 Gradle 5.1 后遇到了同样的问题。禁用 Instant Run 成功了!谢谢
8赞 Nikhil Girraj 4/19/2020
此选项在我的 Android Studio 中不可用。详细信息 - (Android Studio 3.5.1 Build #AI-191.8026.42.35.5900203,构建于 2019 年 9 月 26 日 JRE:1.8.0_202-release-1483-b03 amd64 JVM:JetBrains s.r.o Windows 10 10.0 开发的 OpenJDK 64 位服务器虚拟机)
0赞 gumuruh 4/27/2023
这是哪个版本的 ANdroid studio?
1赞 Mr-IDE 6/7/2023 #5

尝试降级一个或多个库(Gradle 依赖项)。最新版本通常具有较少的向后兼容性支持。

例如:

build.gradle

dependencies {
    // Version 2.5.1 was released on 27 July 2022
    // This will produce the error:
    // "Invoke-customs are only supported starting with android 0 --min-api 26"
    // if you're using minSdkVersion 21 (Android 5.0)
    implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.5.1'
}

如果将此特定库降级到版本 2.2.0,它将修复错误:

build.gradle

dependencies {
    // Version 2.2.0 was released on 22 Jan 2020
    // This will fix the error:
    // "Invoke-customs are only supported starting with android 0 --min-api 26"
    implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.2.0'
}

您可以在此处查看可用版本和发布日期: https://maven.google.com/

评论

0赞 userVadim 11/23/2023
是的,对我来说,更改 JavaVersion 没有帮助。我不得不将google-services版本从4.4.0降级到4.3.15