前言
有一个契机促使我去研究这个文件夹,我有在ide里设置了gradle的usr home路径,这与系统默认的用户主目录不同。我使用的Android Studio版本为2020.3.1 北极狐版。我新建了一个项目,我发现使用的gradle-7.0.2-bin.zip,我使用gradlew -v查看Gradle的版本号确实是7.0.2,但是在.idea/gradle.xml内是这样的
<GradleProjectSettings>
<option name="testRunner" value="GRADLE" />
<option name="distributionType" value="DEFAULT_WRAPPED" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="gradleHome" value="$USER_HOME$/.gradle/wrapper/dists/gradle-6.5-all/2oz4ud9k3tuxjg84bbf55q0tn/gradle-6.5" />
<option name="modules">
<set>
<option value="$PROJECT_DIR$" />
<option value="$PROJECT_DIR$/app" />
</set>
</option>
<option name="resolveModulePerSourceSet" value="false" />
</GradleProjectSettings>
这使我很疑惑,为什么是gradle-6.5?清缓存之后还是这样。这让我对.idea文件以及IDE运行产生了兴趣,所以决定研究下。
IDE新建项目默认添加忽略的文件
/.idea/caches
/.idea/libraries
/.idea/modules.xml
/.idea/workspace.xml
/.idea/navEditor.xml
/.idea/assetWizardSettings.xml
-
caches 缓存 -
libraries 此目录包含指示库的 jar 文件存储位置的文件。由于下载路径可能是特定于用户的,应该被忽略。 -
modules.xml 此文件包含模块.iml文件的路径,应该被忽略。 -
workspace.xml 该文件包含有关您在 Android Studio 上的工作区的信息,例如光标在您打开的文件上的最后一个位置,它是用户特定的信息,应该被忽略。 -
navEditor.xml 此文件存储元素在导航编辑器中的位置。如果此信息与您的项目相关,则应保留此文件。 -
assetWizardSettings.xml 该文件存储了 Android Studio 向导添加的最后一个图标。应该被忽略。比如你往res导入svg生成vector的操作。
建议不要添加忽略的项
-
codeStyles 代码样式文件夹。 -
dictionaries 字典文件夹。 -
inspectionProfiles 此文件夹包含项目特定Lint规则。 -
misc.xml 文件包含一些项目信息,比如java版本和项目类型
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="true" project-jdk-name="11" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
<component name="ProjectType">
<option name="id" value="Android" />
</component>
</project>
-
vcs.xml 此文件包含有关您在项目中使用的 VCS 的信息,以允许您使用 GUI 执行版本控制操作。
建议添加忽略的项
-
runConfigurations.xml 该文件存储了您可以通过单击“编辑配置”添加的配置。 -
gradle.xml 包含gradle 版本的本地路径,还包含模块的路径。 -
shelf 看文件夹名字就懂了,里面常常存一些git操作记录。 -
deploymentTargetDropDown.xml 调试设备的一些记录。
后话
应该还有很多文件没提到,暂时就这么多吧,以后碰到再补。
可以在此项目查看IDE源码学习gradle运作流程https://github.com/JetBrains/android,我现在使用的IDE版本是203.7717.56,也就是这个tag:idea/203.7717.56
|