我又來給大模型貢獻素材了!
問題
在更新了Android Studio Narwhal Feature Drop | 2025.1.2 Patch 1版本之后,遇到了一個問題,很煩人!
AS每次更新都能搞出點新毛病,真的服了。
使用離線依賴aar包引入某個庫之后,在編輯器中按住Command查看此庫的代碼,會立即彈出一個Build錯誤提示,內容如下:
Initialization script '/private/var/folders/mw/7l7t1k7x6277h8_0jbg89z9r0000gn/T/ijArtifactDownloader1.gradle' line: 41Execution failed for task ':app:ijDownloadArtifact8fa437a9-6cc'.
> Could not resolve all files for configuration ':app:downloadArtifact_96341a82-71d7-42e4-9f26-18fd8f441dc9'.> Could not find ./app/libs/BRV-1.6.1.aar:sources:.Required by:project :appPossible solution:- Declare repository providing the artifact, see the documentation at https://docs.gradle.org/current/userguide/declaring_repositories.htmlAsk Gemini
意思就是找不到這個庫的源碼,因為是直接放在libs下面的aar包,大概率是沒有源代碼的,只能看到class反編譯后的Java代碼,和在線依賴會自動下載source.jar(如果有)是不一樣的。
其實并不是所有aar都必須帶著源碼發布啊,IDE自動反編譯的代碼已經夠看邏輯了,為什么非要傻不拉幾的去查找source呢?而且每點一次查看,就會彈一次錯誤,雖然不影響項目編譯,但影響心情。
解決
先嘗試Google,沒什么結果,然后問了一下GPT,讓我找到Settings中的這個路徑:Build, Execution, Deployment
→ Build Tools
→ Gradle
,把“Download external annotations”關掉。我發現這個默認本來就是關的,所以應該不是這里的問題。
再嘗試Invalidate Caches清IDE緩存,也沒什么用。
最終只能靠自己探索了,還是打開Settings,找到Advanced Settings
,其中有一個“Automatically download sources for a file upon open”,把它關掉,即可解決。就是它,默認會在你打開三方庫aar代碼文件時,自動嘗試查找和下載源碼,如果失敗就會彈出錯誤。
再次吐槽一下,真不知道開發IDE的人怎么想的,默認搞這個設置,不考慮開發者實際的體驗。