最新2025:解决java.lang.IllegalArgumentException: this and base files have different roots

bug说明

[ksp] java.lang.IllegalArgumentException: this and base files have different roots: ……
at kotlin.io.FilesKt__UtilsKt.toRelativeString(Utils.kt:117)
at kotlin.io.FilesKt__UtilsKt.relativeTo(Utils.kt:128)

背景:解决Android studio kotlin项目bug
原因:Android gradle包缓存和项目不在同一个盘中

解决方案

.android
  1. 首先新建一个文件夹,用于存放修改路径后的. android 文件夹。我选择的路径为 D:\Android\AVDs
  2. 新建一个系统的环境变量,变量名为 ANDROID_SDK_HOME。变量值即为上一步的路径。如下图所示。

环境变量

  1. 将 “C:\Users \ 用户名” 目录下的. android 文件夹剪切到 “D:\Android\AVDs” 目录下。(担心有风险的话,可以提前做好备份)
  2. 修改 D:\Android\AVDs.android\avd 中的. ini 文件,将 path 中原来的 “C:\Users \ 用户名” 路径修改为当前路径。如下图所示。
    注意:所有. ini 文件都要修改,一个. ini 文件对应一个设备

ini文件

  1. 重启电脑生效。
.gradle
  1. 找到 C:\Users \ 用户名.gradle,将其移动到项目所在盘任意目录
  2. 打开 Android Studio,File -> Settings。直接修改成你希望设置的缓存路径即可。
    Android Studio .gradle设置
  3. 重启 Android Studio,重新运行项目,即可解决
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yumuing blog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值