錯誤:,

來源:互聯網
上載者:User

錯誤:,

今天晚上在AS上運行校長項目時,報錯如下:

Error:(71, 35) 錯誤: -source 1.6 中不支援 diamond 運算子(請使用 -source 7 或更高版本以啟用 diamond 運算子)

這個錯誤對應程式裡的代碼是:



一般正確的寫法是在聲明的時候指定類型,也就是:

List<PublicBlogListBean>  _hotDatas = new ArrayList<PublicBlogListBean>();


但是在JDK 1.7裡新增了一個新特性:

      增強對通用執行個體建立(diamond)的類型推斷 :
             類型推斷是一個特殊的煩惱,下面的代碼: 
             Map<String, List<String>> anagrams = new HashMap<String, List<String>>(); 

             通過類型推斷後變成: 
             Map<String, List<String>> anagrams = new HashMap<>(); 
             這個<>被叫做diamond(鑽石)運算子,這個運算子從引用的聲明中推斷類型。 


也就是說JDK1.7支援這種類型推斷後,在聲明_hotDatas 時new ArrayList<>裡可以不需要加上PublicBlogListBean類型


中的錯誤也提示了:-soure1.6中不支援diamond運算子,Diamond types are not supported at this language level。說明目前使用的JDK版本不支援,但是Project此時的JDK路徑正是1.7的版本,這...


事實上項目裡還沒有對module做源碼相容性的配置,即設定 Source Compatibility和Target Compatibility為1.7:


點擊ok會後gradle重新構建,確定reload Project下就好啦~



也可以在build.gradle裡直接配置:




尋找的相關資源:

jdk1.7新特性

AndroidGradlePlugin指南(六)進階構建定製



聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.