Android Studio Ladybug升级老项目遇到问题

背景

把一个旧小项目升级,从7.x升级到8.x遇到问题记录。

Unknown Kotlin JVM

这是错误特征:

sh 复制代码
* What went wrong:
Could not determine the dependencies of task ':app:compileDebugKotlin'.
> Unknown Kotlin JVM target: 21

当升级的时候:

sh 复制代码
distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip
com.android.tools.build:gradle:8.7.1

很容易遇到这个问题,也就是第一个问题,项目无法初始化。

需要在app:build.gradle中配置:

sh 复制代码
android {
    compileOptions {
        sourceCompatibility = JavaVersion.VERSION_17
        targetCompatibility = JavaVersion.VERSION_17
    }
    kotlinOptions {
        jvmTarget = "17"
    }
}

同步项目即可解决。当然你的settings中需要配置jdk17。

BuildConfig找不到,R文件找不到

编译代码时候会发现BuildConfig,和R都是红色,不存在。

需要增加配置buildConfig。

如果你的项目需要viewBinding,就需要一样设置。

如果你项目刚好用上了aidl,对应的Java文件也无法自动生成,需要主动激活。

sh 复制代码
android {
    buildFeatures {
        viewBinding true
        buildConfig true
        aidl true
    }
}

namespace

这个错误提示很明显的,as在错误信息中告诉你如何修复。

sh 复制代码
android {
    namespace "pkg"
}

最后

as为什么要把常用的,必须的那些功能默认关闭,真的恶心人。

相关推荐
又见情义3 分钟前
RK3568 Android 13 SDK 开机自动开启共享热点实践
android
mmsx1 小时前
return false 不是拦截:一次按键触发两个动作的事件冒泡陷阱
android·bug
DU_YULIN1 小时前
Camera HAL ThreadManager概述
android·camera hal
淡淡的香烟2 小时前
Android中的MQTT通信原理解析
android·物联网
淡淡的香烟2 小时前
Android Camera开发详解
android·音视频
mmsx3 小时前
基于 Android 的校园信息管理系统源码
android·java·okhttp
JTaoX4 小时前
pycharm 集成本地 jupyter notebook
ide·jupyter·pycharm
YF02114 小时前
如何进入Android工程模式
android
Kevin Coding5 小时前
JsonConvert:适用于 Android、鸿蒙与 Flutter 的 JSON 转 Model 插件
android·flutter·harmonyos
xcLeigh7 小时前
Go入门:基本数据类型全览与选择指南
android·服务器·golang·教程·go热门