当前位置: 首页 > 知识库问答 >
问题:

Android Studio中的.iml文件是什么?

子车高超
2023-03-14

Android Studio项目中的.iml文件是什么?我读到它是模块的配置文件。我不明白它是如何工作的,难道我就不能使用gradle脚本与您添加到项目中的外部模块集成吗。

而且,大多数时候AS生成它们,所以我无法控制项目行为。如果我有一个团队在不同的IDE(如Eclipse和AS)中工作,有没有可能将我的项目设置成IDE不可知?

我不完全理解这个系统是如何运作的。

共有2个答案

裴永年
2023-03-14

.idea*.iml添加到.gitignore中,您不需要那些文件就可以成功导入和编译项目。

巫新知
2023-03-14

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

在Google上搜索IML文件

IML是一个由IntelliJ IDEA创建的模块文件,IntelliJ IDEA是一个用于开发Java应用程序的IDE。它存储有关开发模块的信息,这些模块可能是Java、插件、Android或Maven组件;保存模块路径、依赖项和其他设置。

(摘自本页)

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

您确实“使用gradle脚本与外部模块集成”,或者您自己的模块。

但是,Gradle不是IntelliJ IDEA的原生项目模型--它是独立的,保存在.iml文件中,元数据保存在.idea/目录中。在Android Studio中,这些内容主要是由Gradle构建脚本生成的,这就是为什么当您更改build.Gradle等文件时,有时会提示您“将项目与Gradle文件同步”。这也是为什么您不必费心将.iml文件或.idea/放入版本控制中的原因,因为它们的内容将重新生成。

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

在很大程度上,你不能。

欢迎您拥有一个使用Eclipse风格目录结构的Android项目(例如,项目根目录中的resources和manifest)。您可以通过build.Gradle教Gradle如何在该结构中查找文件。但是,其他元数据(compilesdkversion、依赖项等)将不那么容易复制。

其他备选方案包括:

>

  • 将每个人移到另一个构建系统,比如Maven,它与Eclipse和Android Studio同样集成(或者不集成,取决于您的视角

    我希望Andmore很快就会出现,这样您就可以拥有一个Eclipse IDE,它可以从Gradle构建脚本构建Android项目

    让每个人都使用一个IDE

  •  类似资料:
    • 问题内容: 在Maven中,项目的依赖项在pom.xml文件中指定。在IntelliJ IDEA中,即使对于Maven项目,相同的信息也存储在iml文件中。在两个地方具有相同的信息有什么需要? 问题答案: 导入Maven项目时,IDEA以其可以在内部理解和使用的格式表示其依赖关系模型。如果通过Maven管理依赖关系,则无需在IntelliJ IDEA模块设置中更改依赖关系。 这也可以用来试验依赖项

    • 从云端仓库拉下来的自己的项目会在根目录下新建一个名称为 "项目名.iml" (这个文件是干嘛的) 的文件,我在文件 ".gitignore" 中设置排除文件 "项目名.iml" 后使用命令 git status 仍然显示有这个文件,我要如何设置可以忽略掉文件 "项目名.iml" 不提交,不推送到云端仓库?

    • 我现在已经切换到Android Studio,并用源代码树在Git中保存我的项目。每当我从模块中添加或删除任何库时,它的.iml文件也会更改。如果我提交*.iml真的无关紧要,因为它们是在其他Android Studio中自动生成的。但是,在这里它说您应该存储*.iml。我的问题是,我们真的需要和别人分享我们的*.iml吗?若有,原因为何?

    • 嗨,我试图用gradle设置我的intelliJ。 IntelliJ创建并使用项目。中的iml。idea \模块目录。 当我将gradle与idea插件一起使用时,它会生成一个项目。项目根目录中的iml。如何说服gradle插件使用正确的iml文件? 我使用Gradle 3.5和IntelliJ 2017.1.4

    • 我有个奇怪的问题。

    • 我正在尝试从AndroidStudio中的JSON文件中读取数据,格式如下: 我想有对象包含int,String,String(每行的新对象)。有人知道怎么写吗?