android studio與不同jdk的配置

我們知道jdk的版本升級都會有一些對開發(fā)者比較好用的新特性,比如1.7支持了new ArrayList<>(); switch “string”,1.8的lambda表達式,合理使用這些新特性會有助于我們的開發(fā)。

有時候,如果導入了比較高版本的jdk寫法的時候,你只能選擇用對應版本的jdk來進行編譯。

修改位置:module setting里properties的source Compatibility 和target Compatibility.

1.6改到1.7基本沒什么坑和需要設置的。

改到1.8時候則需要注意。

如果你的module比較簡單,可能會看到如下的報錯:

Error:Jack is required to support java 8 language features. Either enable Jack or remove sourceCompatibility JavaVersion.VERSION_1_8.

在module的defaultConfig里添加

jackOptions {

enabled true

}

注buildTools需要24.0.0以上

在網上查了下,這么做會不能兼容其他的apt插件,比如butterknife,Dagger等,jdk8和apt二選一。

同樣是換到了jdk8我在一個比較復雜的Project中時候報的錯不是上述的,而是 說j

“XX\bin\java.exe'' finished with non-zero exit value 2”.

在網上看到了,還有另一種的第三方兼容解決方案:GitHub - evant/gradle-retrolambda: A gradle plugin for getting java lambda support in java 6, 7 and android。 有興趣的可以自己去嘗試下。

注:本人使用的as2.1(mac) 其他版本是否有類似問題未去驗證。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home...
    光劍書架上的書閱讀 4,183評論 2 8
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,938評論 25 709
  • 電視劇行將結束。編劇回復到10多年前的套路,輕喜劇中套一個悲劇。個人感覺,比不靠譜的最近常見的時裝劇要讓人能共鳴得...
    張蛤蜊閱讀 261評論 0 1
  • 悅朋書店? 在我拐進豐樂路不久、繞過停在路邊開著雙閃的土豪金A4時,無意間發(fā)現(xiàn)了它。 上一次經過這里時還沒發(fā)現(xiàn),應...
    申由己閱讀 4,892評論 4 50
  • 相信搞ios少不了打包,但是有時候想拿到以前打的包,那怎么辦?一開始我總是重新打包,然后等到進入那個Archive...
    Sax_Frank閱讀 4,032評論 0 5

友情鏈接更多精彩內容