首页 > 解决方案 > 为什么 Android Studio 不断切换“语言级别”?

问题描述

很多时候,当我查看git diff使用 Android Studio 构建的 Android 应用程序的输出时,我会看到以下内容。有时它会languageLevelJDK_1_7变为JDK_1_8。其他时候它languageLevelJDK_1_8变为JDK_1_7。怎么这么优柔寡断??

--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -24,7 +24,7 @@
       </value>
     </option>
   </component>
-  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
+  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">

标签: androidandroid-studio

解决方案


1)将此添加到您的应用程序build.gradle(在android元素内)

compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}

2)从 Git 中排除.idea文件夹,将其添加到您的项目级别.gitignore

# Ignore idea folder
.idea/

那么你需要按照这样的方式刷新你的版本化文件

对文件夹进行版本控制.idea仅与您的团队共享一些 AS 设置很有用,如果您是单独工作或没有共享编码策略,则可以将其删除。


推荐阅读