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

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

相关文章
|
3月前
|
Java Android开发 C++
Android Studio JNI 使用模板:c/cpp源文件的集成编译,快速上手
本文提供了一个Android Studio中JNI使用的模板,包括创建C/C++源文件、编辑CMakeLists.txt、编写JNI接口代码、配置build.gradle以及编译生成.so库的详细步骤,以帮助开发者快速上手Android平台的JNI开发和编译过程。
273 1
|
1月前
|
Java Unix Linux
Android Studio中Terminal运行./gradlew clean build提示错误信息
遇到 `./gradlew clean build`命令执行出错时,首先应检查错误信息的具体内容,这通常会指向问题的根源。从权限、环境配置、依赖下载、版本兼容性到项目配置本身,逐一排查并应用相应的解决措施。记住,保持耐心,逐步解决问题,往往复杂问题都是由简单原因引起的。
270 2
|
2月前
|
XML IDE 开发工具
🔧Android Studio高级技巧大公开!效率翻倍,编码不再枯燥无味!🛠️
【9月更文挑战第11天】在软件开发领域,Android Studio凭借其强大的功能成为Android开发者的首选IDE。本文将揭示一些提升开发效率的高级技巧,包括自定义代码模板、重构工具、高级调试技巧及多模块架构。通过对比传统方法,这些技巧不仅能简化编码流程,还能显著提高生产力。例如,自定义模板可一键插入常用代码块;重构工具能智能分析并安全执行代码更改;高级调试技巧如条件断点有助于快速定位问题;多模块架构则提升了大型项目的可维护性和团队协作效率。掌握这些技巧,将使你的开发之旅更加高效与愉悦。
66 5
|
3月前
|
网络安全 图形学 Android开发
Unity与安卓丨AS报错:SSL peer shut down incorrectly
Unity与安卓丨AS报错:SSL peer shut down incorrectly
Unity与安卓丨AS报错:SSL peer shut down incorrectly
|
3月前
|
编解码 Android开发
【Android Studio】使用UI工具绘制,ConstraintLayout 限制性布局,快速上手
本文介绍了Android Studio中使用ConstraintLayout布局的方法,通过创建布局文件、设置控件约束等步骤,快速上手UI设计,并提供了一个TV Launcher界面布局的绘制示例。
59 1
|
3月前
|
Android开发
Android Studio: 解决Gradle sync failed 错误
本文介绍了解决Android Studio中出现的Gradle同步失败错误的步骤,包括从`gradle-wrapper.properties`文件中获取Gradle的下载链接,手动下载Gradle压缩包,并替换默认下载路径中的临时文件,然后重新触发Android Studio的"Try Again"来完成同步。
1415 0
Android Studio: 解决Gradle sync failed 错误
|
3月前
|
Java Android开发 芯片
使用Android Studio导入Android源码:基于全志H713 AOSP,方便解决编译、编码问题
本文介绍了如何将基于全志H713芯片的AOSP Android源码导入Android Studio以解决编译和编码问题,通过操作步骤的详细说明,展示了在Android Studio中利用代码提示和补全功能快速定位并修复编译错误的方法。
139 0
使用Android Studio导入Android源码:基于全志H713 AOSP,方便解决编译、编码问题
|
3月前
|
API 开发工具 Android开发
Android Studio:解决AOSP自编译framework.jar引用不到的问题
在Android Studio中解决AOSP自编译framework.jar引用问题的几种方法,包括使用相对路径、绝对路径和通过`${project.rootDir}`动态获取路径的方法,以避免硬编码路径带来的配置问题。
247 0
Android Studio:解决AOSP自编译framework.jar引用不到的问题
|
3月前
|
Dart 开发工具 Android开发
Android Studio导入Flutter项目提示Dart SDK is not configured
Android Studio导入Flutter项目提示Dart SDK is not configured
326 4
|
3月前
|
Java 网络安全 开发工具
UNITY与安卓⭐一、Android Studio初始设置
UNITY与安卓⭐一、Android Studio初始设置