前言
有一個契機促使我去研究這個檔案夾,我有在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 檔案存儲位置的檔案。由于下載下傳路徑可能是特定于使用者的,應該被忽略。.idea檔案夾一探究竟 -
modules.xml
此檔案包含子產品.iml檔案的路徑,應該被忽略。 -
workspace.xml
該檔案包含有關您在 Android Studio 上的工作區的資訊,例如光标在您打開的檔案上的最後一個位置,它是使用者特定的資訊,應該被忽略。 -
navEditor.xml
此檔案存儲元素在導航編輯器中的位置。如果此資訊與您的項目相關,則應保留此檔案。 -
assetWizardSettings.xml
該檔案存儲了 Android Studio 向導添加的最後一個圖示。應該被忽略。比如你往res導入svg生成vector的操作。.idea檔案夾一探究竟
建議不要添加忽略的項
-
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
該檔案存儲了您可以通過單擊“編輯配置”添加的配置。.idea檔案夾一探究竟 -
gradle.xml
包含gradle 版本的本地路徑,還包含子產品的路徑。 -
shelf
看檔案夾名字就懂了,裡面常常存一些git操作記錄。 -
deploymentTargetDropDown.xml
調試裝置的一些記錄。
後話
應該還有很多檔案沒提到,暫時就這麼多吧,以後碰到再補。
可以在此項目檢視IDE源碼學習gradle運作流程https://github.com/JetBrains/android,我現在使用的IDE版本是203.7717.56,也就是這個tag:idea/203.7717.56