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为什么要把常用的,必须的那些功能默认关闭,真的恶心人。

相关推荐
从零点17 分钟前
如何在VSCode安装stm32的开发环境
ide·vscode·stm32
千里马学框架18 分钟前
干货分享:车载音频audio调试开发之dumpsys CarAudioService剖析
android·音视频·面试题·audio·系统开发·车载audio·framework工程师
私人珍藏库22 分钟前
[Android] Bilibili音乐播放器Biu安卓版,适配手机-平板-汽车
android·智能手机·电脑
nongcunqq22 分钟前
离线下载 vscode 插件 chrome 插件 docker镜像
ide·vscode·编辑器
z92098102327 分钟前
安卓16 手机系统 super 分区挂载读写 解锁安卓动态分区RW 逻辑分区读写 自由读写 修改分区system vendor、product
android·智能手机·安卓动态分区·解锁动态分区·分区挂载读写
风酥糖30 分钟前
Android上部署Linux环境的方案总结对比
android·linux·运维
行思理30 分钟前
mac终端下生成android 证书
android·macos
今夕资源网32 分钟前
LANDrop 跨平台局域网文件传输工具 支持 iOS、Android、macOS、Windows、Linux、Android TV 等操作系统
android·linux·macos·跨平台·文件传输·局域网文件共享·局域网文件传输
杂家11 小时前
WebStorm搭建Vue3+Element Plus
ide·webstorm
BduL OWED11 小时前
mysql的主从配置
android·mysql·adb