解決Android Studio查找aar源碼的錯誤

我又來給大模型貢獻素材了!

問題

在更新了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, DeploymentBuild ToolsGradle,把“Download external annotations”關掉。我發現這個默認本來就是關的,所以應該不是這里的問題。

再嘗試Invalidate Caches清IDE緩存,也沒什么用。

最終只能靠自己探索了,還是打開Settings,找到Advanced Settings,其中有一個“Automatically download sources for a file upon open”,把它關掉,即可解決。就是它,默認會在你打開三方庫aar代碼文件時,自動嘗試查找和下載源碼,如果失敗就會彈出錯誤。

再次吐槽一下,真不知道開發IDE的人怎么想的,默認搞這個設置,不考慮開發者實際的體驗。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/95574.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/95574.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/95574.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

華為HCIP、HCIE認證:自學與培訓班的抉擇

大家好,這里是G-LAB IT實驗室。 在追求個人職業發展的道路上,取得華為的HCIP或HCIE認證是許多IT從業者的重要目標之一。 但在備考過程中,我們常常面臨一個選擇:是自學還是報名參加培訓班?本文將針對這個問題&#xff0…

空調噪音不穿幫,聲網虛擬直播降噪技巧超實用

虛擬主播團隊負責人來吐槽!實時互動是核心,可主播回應慢半拍、動作表情跟不上語音,用戶立馬覺得假,嘩嘩流失。之前方案端到端延遲 700ms,互動總慢一步。直到接入商湯日日新大模型和聲網合作方案,延遲壓到 5…

Spark和Spring整合處理離線數據

如果你比較熟悉JavaWeb應用開發,那么對Spring框架一定不陌生,并且JavaWeb通常是基于SSM搭起的架構,主要用Java語言開發。但是開發Spark程序,Scala語言往往必不可少。 眾所周知,Scala如同Java一樣,都是運行…

智能高效內存分配器測試報告

一、項目背景 這個項目是為了學習和實現一個高性能、特別是高并發場景下的內存分配器。這個項目是基于谷歌開源項目tcmalloc(Thread-Caching Malloc)實現的。tcmalloc 的核心目標就是替代系統默認的 malloc/free,在多線程環境下提供更高效的內存管理。C/C的malloc雖…

吱吱企業通訊軟件以安全為核心,構建高效溝通與協作一體化平臺

隨著即時通訊工具日益普及,企業面臨一個嚴峻的挑戰:如何在保障通訊數據安全的前提下,提升辦公效率?為解決此問題,吱吱企業通訊軟件誕生,通過私有化部署和深度集成的辦公系統,為企業打造一個既可…

校企合作| 長春大學旅游學院副董事長張海濤率隊到訪卓翼智能,共繪無人機技術賦能“AI+文旅”發展新藍圖

為積極響應國務院《關于深入實施“人工智能”行動的意見》(國發〔2025〕11號)號召,扎實推進學校“旅游”與“人工智能”雙輪驅動的學科發展戰略,加快無人機技術在文旅領域的創新應用,近日長春大學旅游學院副董事長張海…

為什么要用 MarkItDown?以及如何使用它

在處理大量文檔時,尤其是在構建知識庫、進行文檔分析或訓練大語言模型(LLM)時,將各種格式的文件(如 PDF、Word、Excel、PPT、HTML 等)轉換為統一的 Markdown 格式,能夠顯著提高處理效率和兼容性…

LVGL9.3 vscode 模擬環境搭建

1、git 克隆: git clone -b release/v9.3 https://github.com/lvgl/lv_port_pc_vscode.git 2、cmake 和 mingw 環境搭建 cmake: https://blog.csdn.net/qq_51355375/article/details/139186681?spm1011.2415.3001.5331 mingw: https://bl…

投影矩陣:計算機圖形學中的三維到二維轉換

投影矩陣是計算機圖形學中的核心概念之一,它負責將三維場景中的幾何數據投影到二維屏幕上,從而實現三維到二維的轉換。無論是游戲開發、虛擬現實,還是3D建模,投影矩陣都扮演著不可或缺的角色。本文將深入探討投影矩陣的基本原理、…

10.2 工程學中的矩陣(2)

十、例題 【例3】求由彈簧連接的 100100100 個質點的位移 u(1),u(2),...,u(100)u(1),u(2),...,u(100)u(1),u(2),...,u(100), 彈性系數均為 c1c 1c1, 每個質點受到的外力均為 f(i)0.01f(i)0.01f(i)0.01. 畫出兩端固定和固定-自由這兩種情形 u 的圖形。 解: % 參數設…

Mysql主從復制之延時同步

1.延時同步概念通過人為配置從庫和主庫延時N小時可以實現延時同步,延時同步可以解決數據庫故障出現的數據丟失問題(物理損壞如直接使用rm刪除數據庫數據和邏輯損壞如使用drop命令刪除數據庫)2.延時同步實操2.1先配置從庫延時同步,并且設置sql線程300秒后…

【QT特性技術講解】QPrinter、QPdf

前言 QT對打印和PDF應用場景,做了簡單的封裝,復雜的功能還是得用第三方庫,打印功能簡單的文本可以不用PDF,涉及圖形的基本都要用到PDF。 Linux打印 隨著國產信創項目替換基于Linux的桌面系統國產信創系統,Linux桌面系…

【大數據技術實戰】Flink+DS+Dinky 自動化構建數倉平臺

一、背景:企業數倉建設的現狀與挑戰在數字化轉型進入深水區的今天,數據已成為企業核心生產要素,而實時數倉作為 “數據驅動決策” 的關鍵載體,其建設水平直接決定企業在市場競爭中的響應速度與決策精度。根據 IDC《2024 年全球大數…

Python開篇:撬動未來的萬能鑰匙 —— 從入門到架構的全鏈路指南

Python:撬動未來的萬能鑰匙——從入門到架構的全鏈路指南 在技術的星空中,Python 是那顆永不隕落的超新星——它用簡潔的語法點燃創造之火,以龐大的生態鋪就革新之路。無論你身處哪個領域,這把鑰匙正在打開下一個時代的大門。2024…

【QT隨筆】事件過濾器(installEventFilter 和 eventFilter 的組合)之生命周期管理詳解

【QT隨筆】事件過濾器(installEventFilter 和 eventFilter 的組合)之生命周期管理詳解 上一章節中提到事件過濾器(Event Filter),用于處理特定事件。其中第二小節中提到了事件過濾器生命周期管理。本文將詳細解析事件過濾器生命周期管理這一部分的內容。 (關注不迷路哈!…

關于linux軟件編程12——網絡編程3

一、單循環服務器 特點:1.可以處理多個客戶端 (不能同時)2.效率不高//單循環服務器: socket bind listen while (1) {connfd accept();//通信 }特點:簡單 可以處理多客戶端 不能同時 二、并發服務器 --- 同時可以處理多個客戶端1、設置一個選項(開啟一個功能) ---讓地址重…

thinkphp6通過workerman使用websocket

安裝workerman依賴 composer require topthink/think-worker composer require topthink/think-worker1.0.* # 指定兼容版本?:ml-citation{ref"1,7" data"citationList"}config配置 config/worker.php <?php return [// 擴展自身需要的配置host …

Rust SQLx 開發指南:利用 Tokio 進行性能優化

在當今高并發的應用開發環境中&#xff0c;數據庫操作往往是性能瓶頸的主要來源之一。SQLx 作為一個純 Rust 編寫的異步 SQL 客戶端庫&#xff0c;通過與 Tokio 運行時深度集成&#xff0c;為開發者提供了處理數據庫 I/O 密集型操作的強大工具。本文將帶您深入了解如何利用這兩…

嵌入式硬件電路分析---AD采集電路

文章目錄摘要AD采集電路1AD采集電路2R77的真正作用是什么&#xff1f;理想與現實&#xff1a;為什么通常可以忽略R77的影響&#xff1f;摘要 AD采集 AD采集電路1 這是個人畫的簡化后的AD采集電路 這是一個AD檢測電路&#xff0c;R1是一個可變電阻&#xff0c;R2是根據R1的常用…

Python爬取nc數據

1、單文件爬取爬取該網站下的crupre.nc數據&#xff0c;如下使用requests庫&#xff0c;然后填寫網站的url&#xff1a;"http://clima-dods.ictp.it/regcm4/CLM45/crudata/"和需要下載的文件名&#xff1a;"crupre.nc"import requests import osdef downlo…