Android Apt失效:找不到Apt生成的對應類

Android Apt失效:找不到Apt生成的對應類


參考自

  1. Android Gradle由4.x升級至5.0導致Apt項目失效
  2. 高級開發必須理解的Java中SPI機制 - 簡書
  3. Upgrading your build from Gradle 4.x to 5.0

Android Gradle由4.x升級至5.0導致Apt項目失效可以得到一種解決方法。而且的確能解決,但是很明顯,這種方法只是治標不治本的,所以我這裏就不重複寫出來了,感興趣的同學可以直接點擊鏈接看看。

但是這篇文章提供給了我兩樣東西:java中的SPI機制gradle的升級文檔。根據這兩個信息找到了高級開發必須理解的Java中SPI機制 - 簡書
Upgrading your build from Gradle 4.x to 5.0,最後解決了問題。

文檔中有描述:

在這裏插入圖片描述
翻譯過來就是,原來的4.5之前的註解處理器是可以通過compile直接使用,但是,如果你從4.5版本升級到5.1以及以上版本後,這樣的方式就不能再次使用了,這個時候必須使用annotationProcessor進行引入。

另外,在這裏還遇到了一個很有意思的問題(其實也是我腦抽),通過這樣的方式也可以正常使用apt,但是這個包中其實僅僅包含了註解處理器,並沒有包含對應的註解類,但是卻能獲取到對應的註解類。即下面兩個方式,實現的效果一致!
在這裏插入圖片描述在這裏插入圖片描述

原因也很簡單,在auto-service有對於annotation的依賴,所以在依賴的時候會直接導入對應的註解包。框架使人輕鬆,但是也使人愚笨!
在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章