解决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文件夹正名》

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

相关文章
|
27天前
|
XML 存储 数据库
如何使用Android Studio创建一个基本的音乐播放器应用
如何使用Android Studio创建一个基本的音乐播放器应用
37 0
|
18天前
|
存储 Linux 开发工具
Linux手动升级替换Android Studio
【6月更文挑战第22天】
|
18天前
|
Android开发
Android Studio(2022.3.1)设置阿里云源-新旧版本
Android Studio(2022.3.1)设置阿里云源-新旧版本
88 1
|
21天前
|
XML Java 开发工具
Android Studio开发Android TV
【6月更文挑战第19天】
|
24天前
|
Android开发
Android studio 出现Plugin [id: ‘com.android.application‘, version: ‘8.1.0‘, apply: false] 问题解决办法
Android studio 出现Plugin [id: ‘com.android.application‘, version: ‘8.1.0‘, apply: false] 问题解决办法
172 1
|
25天前
|
数据库 Android开发 数据安全/隐私保护
在 Android Studio 中结合使用 SQLite 数据库实现简单的注册和登录功能
在 Android Studio 中结合使用 SQLite 数据库实现简单的注册和登录功能
65 2
|
2天前
|
Oracle Java 关系型数据库
Android studio 安装以及第一个程序
Android studio 安装以及第一个程序
6 0
|
28天前
|
Java API 开发工具
【Android】安Android Studio环境搭建注意点
【Android】安Android Studio环境搭建注意点
37 1
|
1月前
|
开发工具 Android开发
android studio build异常
android studio build异常
20 3
|
1月前
|
Android开发 Windows
android studio开发时提示 TLS 握手错误解决办法
在Windows环境下遇到TLS协议版本不支持的错误,Gradle构建失败。解决方案是在build.gradle.kts中设置系统属性`https.protocols`为`TLSv1.2`,而非遵循误导信息设置为TLSv1.1。