AndroidStudio gradle插件开发 Class ‘xxx‘ already exists 问题解决

在使用Groovy开发Gradle插件时遇到Class 'xxx' already exists警告,此警告源于IDE处理编译目录问题。通过在module的build.gradle中添加特定task,实现自动编译并清理build目录,从而消除红色警告。只需运行该task即可避免影响开发流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以module形式,用groovy开发gradle插件时,会发现自己写的插件总是报 Class ‘xxx’ already exists的红色警告,虽然并不影响插件的使用和调试,但是就很烦:
在这里插入图片描述
这个红色警告产生的原因,应该是因为在module编译后,会在相应build/classes/groovy目录下生成对应groovy类的java类:
在这里插入图片描述
而IDE似乎无法处理该生成目录。
在stackoverflow上,有针对intellij类似问题的解决方法,就是将相应目录标记为exclude。但我发现在androidstudio中这样做没啥用。

解决方案

所以,可以在相应module的build.gradle增加一个如下的task:
在这里插入图片描述

group name可随便改,这里的uploadRepo是我用于上传repo的一个task,会根据是开发还是发布自行判断上传本地还是上传远程repo,可根据需要自行更改上传task。

这样在开发gradle插件时,每次修改更新插件后,直接执行该task:
在这里插入图片描述

就可以自动编译并上传repo,之后直接清空对应module的build目录。从而解决该红色警告。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值