Flutter-Android编译报错与解决方案汇总

发布于:2025-02-25 ⋅ 阅读:(7) ⋅ 点赞:(0)

报错一:java.lang.NullPointerException: Cannot invoke “String.length()” because “” is null

解决方案:

I solved this problem by upgrading Android Gradle Plugin to version 8.3.1.
You can use Tools->AGP Upgrade Assistant to upgrade Android Gradle plugin.

报错二:Namespace not specified. Specify a namespace in the module’s build file.

解决方案:

allprojects {
repositories {
google()
mavenCentral()
}
// This code is where all the magic happens and fixes the error.
subprojects {
afterEvaluate { project ->
if (project.hasProperty(‘android’)) {
project.android {
if (namespace == null) {
namespace project.group
}
}
}
}
}
// This code is where all the magic happens and fixes the error.
}

报错三:Class ‘kotlin.Suppress’ was compiled with an incompatible version of Kotlin. The binary version of its metadata is 1.9.0, expected version is 1.7.1.

解决方案:

https://stackoverflow.com/questions/67699823/module-was-compiled-with-an-incompatible-version-of-kotlin-the-binary-version-o

The expected version is the Kotlin for kotlin-gradle-plugin
The binary version is what is downloaded (or previously compiled) for com.android.tools.build:gradle
buildscript {
ext.kotlin_version = ‘1.5.20’ // <= expected version is 1.5.1
}

dependencies {
classpath ‘com.android.tools.build:gradle:7.3.1’ // downloads 1.7.1 Metadata
classpath “org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version” // <= 1.5.20 used here
}
KGP、Gradle、AGP版本对应表:https://kotlinlang.org/docs/gradle-configure-project.html#apply-the-plugin
通过差对应表,将主工程下的KGP版本升级即可。
From
ext.kotlin_version = ‘1.7.10’
to
ext.kotlin_version = ‘2.0.0’


网站公告

今日签到

点亮在社区的每一天
去签到