Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 關於android開發 >> Android Studio2.1.2 Java8環境下引用Java Library編譯出錯,studio2.1.2java8

Android Studio2.1.2 Java8環境下引用Java Library編譯出錯,studio2.1.2java8

編輯:關於android開發

Android Studio2.1.2 Java8環境下引用Java Library編譯出錯,studio2.1.2java8


問題:在Android Studio2.1.2+Java8的環境下,引用Java Library,同時引用了dataBinding處於enable狀態,會導致編譯出錯,如下圖所示:

解決步驟

1、在所有的module的build.gradle文件中添加如下代碼:

android {
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }
}

再次編譯運行,發現還是報同樣的錯誤,所以肯定還要修改其他的地方。

2、覺得設置Java版本為1.7行不通,就直接把版本改為了1.8

android {
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

結果報出錯誤需要將Jack設置為enable狀態,如下:

我在網上百度了資料,修改主module的build.gradle文件,添加代碼

defaultConfig {
    jackOptions {
        enabled true
    }
}

再次編譯,發現我的情況還真是特殊,還是報錯了,因為我使用了databinding,

3、最後還是修改回了,設置Java版本為1.7,但是這次除了在module的build.gradle文件中設置Java的版本,同時在引用的Java Library的build.gradle文件中添加了如下

“sourceCompatibility = '1.7'”和“targetCompatibility = '1.7'”,代碼如下
apply plugin: 'java'

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    sourceCompatibility = '1.7'
    targetCompatibility = '1.7'
}

終於編譯成功了。

後續:當然網上說也可以同時安裝Java1.7和Java1.8,我個人覺得裝兩個版本也挺麻煩的,所以還是配置下比較方便。

總結:

Java 1.8版本環境下有些功能還不支持,安裝配置環境時最好是選擇穩定成熟的。

 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved