解决Android Studio报错:Compilation is not supported for following modules

简介: 本文主要解决和"Compilation is not supported for following modules"有关的报错。
本文首发于稀土掘金。该平台的作者 逐光而行 也是本人。

报错回顾

昨天导入了一个项目并且对它进行修改,当时是好好的,今天一打开,右下角有个弹窗提示警告信息:

Compilation is not supported for following modules: xxx(我的项目名) Unfortunately you can't have non-Gradle Java modules and Android-Gradle modules in one project.

尝试的解决方案

  • 第一反应是:
invalid caches and restart

image.png
结果:这个方法对我的项目不奏效。

  • 既然提示说问题和Gradle相关,那我就从Gradle入手:
Sync project with Gradle files

image.png

结果:同步结束后还是一样

最终解决了问题的方案

将该项目文件路径下的.idea文件夹删除,之后重启Android Studio。

image.png

思考:为什么删除.idea能成功?

.idea是什么

.开头的文件是一些临时的缓存文件;.idea就是idea这个IDE为项目生成的临时配置文件。

为什么删除它是有效的

因为这里面的一些配置文件,在每次打开项目时,Gradle都会重新再导入,有可能是产生了冲突或者有缺失。如果是团队开发,.idea还可能会覆盖掉别人的配置。

额外收获

通过阅读参考资料中提到的那篇文章,我还了解到了上传代码到Git仓库时,不应把所有的文件都上传,因为这会暴露隐私。
不应该上传的文件及文件夹有:

  1. 谨慎上传的文件
  • Android artifacts that produce a signed build
  • 在IntelliJ IDEA 13 和之前的版本中的dataSources.ids和datasources.xml文件,它们包含数据库密码
  1. 避免分享下面的文件:
  • 对于使用Gradle或Maven的项目,避免分享.iml和.idea/modules.xml文件,因为它们会在导入时生成

?- gradle.xml文件

  • 用户字典(dictionaries文件夹)
  • .idea/libraries目录下的XML文件,因为它们会从Gradle或Maven项目中生成

参考资料

  • 知乎:《为Git仓库里的.idea文件夹正名》

(链接太长,就不贴了,对原文感兴趣的小伙伴可以去搜搜这个标题)

相关文章
|
8月前
|
Android Studio的插件生态非常丰富
Android Studio的插件生态非常丰富
529 1
Android Studio支持多种操作系统
Android Studio支持多种操作系统
434 1
如何在Android Studio中配置Flutter环境?
如何在Android Studio中配置Flutter环境?
848 61
Android studio 报错Connect to 127.0.0.1:8888 [/127.0.0.1] failed: Connection refused: connect(已解决)
这是一篇关于解决Android Studio报错“Connect to 127.0.0.1:8888 failed: Connection refused”的文章。问题通常因系统代理设置被Android Studio自动保存导致。解决方法是找到系统中Android Studio使用的gradle.properties文件(位于Windows的C:\Users\你的电脑用户名\.gradle或Mac的/Users/.{你的用户目录}/.gradle),删除或注释掉多余的代理配置后保存并重新Sync项目。希望此经验能帮助快速解决同类问题!
395 36
Android studio中build.gradle文件简单介绍
本文解析了Android项目中build.gradle文件的作用,包括jcenter仓库配置、模块类型定义、包名设置及依赖管理,涵盖本地、库和远程依赖的区别。
249 19
Android Studio JNI 使用模板:c/cpp源文件的集成编译,快速上手
本文提供了一个Android Studio中JNI使用的模板,包括创建C/C++源文件、编辑CMakeLists.txt、编写JNI接口代码、配置build.gradle以及编译生成.so库的详细步骤,以帮助开发者快速上手Android平台的JNI开发和编译过程。
765 1
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
117 4
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
165 36
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
Flutter前端开发中的调试技巧与工具使用方法,涵盖调试的重要性、基本技巧如打印日志与断点调试、常用调试工具如Android Studio/VS Code调试器和Flutter Inspector的介绍
本文深入探讨了Flutter前端开发中的调试技巧与工具使用方法,涵盖调试的重要性、基本技巧如打印日志与断点调试、常用调试工具如Android Studio/VS Code调试器和Flutter Inspector的介绍,以及具体操作步骤、常见问题解决、高级调试技巧、团队协作中的调试应用和未来发展趋势,旨在帮助开发者提高调试效率,提升应用质量。
215 8

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问