Android Studio中的iml文件是什么?

Android Studio项目中的iml文件是什么? 我读它是模块的configuration文件。 我不明白它是如何工作的,我不能只使用gradle脚本来集成你添加到项目中的外部模块。

而且,大多数时候AS生成它们,所以我无法控制项目行为。 如果我有一个工作在Eclipse和AS之类的不同IDE的团队,是否可以设置我的项目,这样IDE是不可知的?

我不完全了解这个系统是如何工作的。

Android Studio项目中的iml文件是什么?

iml file谷歌search变成:

IML是IntelliJ IDEA创build的模块文件,用于开发Java应用程序的IDE。 它存储有关开发模块的信息,该模块可能是Java,Plugin,Android或Maven组件; 保存模块path,依赖关系和其他设置。

(从这个页面 )

为什么不使用gradle脚本来集成你添加到项目中的外部模块。

您可以使用“gradle脚本与外部模块集成”或您自己的模块。

但是,Gradle不是IntelliJ IDEA的本地项目模型 – 它是分开的,保存在.iml文件中,元数据保存在.idea/目录中。 在Android Studio中,这些东西主要是由Gradle构build脚本生成的,这就是为什么当您更改build.gradle等文件时,有时会提示您“使用Gradle文件同步项目”。 这也是为什么你不打扰.iml文件或.idea/版本控制,因为他们的内容将被重新生成。

如果我有一个团队在不同的IDE中工作,如Eclipse和AS如何使项目IDE不可知的?

在很大程度上,你不能。

欢迎有一个使用Eclipse风格目录结构的Android项目(例如项目根目录中的资源和清单)。 您可以通过build.gradle教Gradle,如何在该结构中查找文件。 但是,其他元数据( compileSdkVersion ,依赖关系等)将不会轻易被复制。

其他select包括:

  • 将每个人都转移到另一个构build系统,比如Maven,这个系统可以同时集成(或不依赖于你的观点)到Eclipse和Android Studio

  • 希望Andmore即将起飞,这样也许你就可以拥有一个可以从Gradle构build脚本构buildAndroid项目的Eclipse IDE

  • 每个人都使用一个IDE

.idea*.iml添加到.gitignore ,不需要这些文件来成功导入和编译项目。

这些文件是由Android Studio编辑器创build和使用的。

您不需要将这些文件检入到版本控制。

Git使用包含文件和目录列表的.gitignore文件来知道不需要检入的文件和目录列表。

Android工作室会自动创build.gitingnore文件,列出所有不需要签入到任何版本控制的文件和目录。

Gust将*.iml添加到.gitignore

在Android Studio中:只需按CTRL + F9即可重build您的项目。 *.iml文件将被生成。