1. 程式人生 > >不同module依賴多個aar問題解決方案

不同module依賴多個aar問題解決方案

在Android Studio的使用過程中,發現這麼一個問題:
建立專案後,會生成第一個module:app。
module:app 依賴了 module:b
module:b 依賴了 module:c
如果沒有特殊依賴,此時編譯是不會產生任何問題的

接著,module:b 依賴 b/libs/xxx.aar。按常規處理,在b的build.gradle檔案中應該新增
dependencies {
compile(name: ‘xxx’, ext: ‘aar’)
}
repositories {
flatDir {
dirs ‘libs’
}
}
此時b可以正確依賴xxx.aar
此時編譯,發現報錯,提示:app的build.gradle中木有找到xxx.aar


(因為app依賴了b,所以對於b中的依賴得完全能找到,所以此時要在app的build.gradle中新增依賴)

dependencies {
compile(name: ‘xxx’, ext: ‘aar’)
}
repositories {
flatDir {
dirs ‘libs’
}
}
此時編譯,發現仍然報錯,提示:app的build.gradle中木有找到xxx.aar 並沒有什麼卵用啊
(在網上一篇文章的幫助下發現,那是因為flatDir指定的路徑是libs,只會在app本身的libs中查詢,為了找到b中的xxx.aar,得提供正確路徑)

理所當然的採用相對路徑
dirs ‘../b/libs’
再次編譯,成功執行

如果此時c中又有aar需要依賴腫麼辦?或者app本身有aar腫麼辦?那就是同時指定不同的查詢路徑
repositories {
flatDir {
dirs ‘libs’,‘../b/libs’,‘../c/libs’
}
}

over~~

相關推薦

不同module依賴aar問題解決方案

在Android Studio的使用過程中,發現這麼一個問題: 建立專案後,會生成第一個module:app。 module:app 依賴了 module:b module:b 依賴了 module:c 如果沒有特殊依賴,此時編譯是不會產生任何問題的。

AndroidStudio中Module依賴同一個jar的解決方案

最近在做一個專案時,遇到一個問題:同一個Android工程中,多個Module依賴同一個Jar包,導致包衝突,解決如下: 解決步驟: 將任意一個Module中的jar依賴更改為compile files('your jar name') 其他需要依賴的地方改為

同時增刪改附件解決方案

align data 最終 inf file div 異常 臨時 技術 同時增刪改多個附件解決方案 需求描述如下圖: 由於同時涉及增刪改、多文件、保存、取消、異常退出、源文件刪除等多種情況,現將實現邏輯梳理如下圖: 最終確定方案要點如下(不刪

redis 配置ip 解決方案

配置ip 我想 外網 password In fire firewall 訪問 all 因為在 redis 中bind 指定的ip 其實為同一網段或localhost 監聽ip,在這裏配置 內網其他網段或者外網多個ip 後 重啟 redis 是不會成功的,

一個伺服器搭tomcat導致session丟失,或者同一個IP不同埠,應用的session會衝突解決方法

 一個伺服器上搭建了多個tomcat或者weblogic,埠不一樣,同時啟動訪問時session丟失。如:A,B兩個服務,在瀏覽器中登入訪問A後,當前開啟的瀏覽器上在開一個選項卡訪問B服務後,回過來點選訪問A時session丟失,需要重新登入A才可以訪問。經過資料查詢,發

Android統一依賴不同版本的Support v7包

解決這個問題再gradle(project)目錄新增 ext {     supportlib_version = '26.1.0' } subprojects {     project.confi

tomcat同一個IP不同埠,應用的session會衝突解決方法

方法1:將不同的多個應用服務在不同的虛擬主機中,或者對映不同的IP進行部署。 方法2:對應tomcat服務處理方式:修改coocie的名稱保證cookie不重複: 對於tomcat8,可以這樣: 在Host標籤內新增 <Context path="/serv

session同ip不同埠的網站session衝突的解決辦法

在程式的common檔案或是其它公用檔案中加入一句php程式碼,如下:ini_set(‘session.name’, ‘PHPSESSID_RS’);當然 第二個引數就是session在儲存到cookie時使用的名字,你可以自己設定自己喜歡的。。。就是因為所有程式使用的se

Android專案依賴專案,它們的jar包衝突的解決辦法

依賴兩個或以上的專案,免不了有jar包衝突(support-v4、support-v7等等)。 我的解決辦法是(以support-v4為例),刪除自己專案本身的support-v4,依賴包中的support-v4都替換成最高版本的support-v4。

No module named "xxx"解決方案

轉載 dir pri os.chdir 成功 sys.path port module 其他 今天用Jenkins執行.py文件時,總是提示ModuleNotFoundError: No module named ‘XXX‘,百思不得其解。但是在PyCharm中卻是能執行成

JDK版本衝突解決方案

今日檢視JDK版本 java -version,突然出現一條錯誤提示 has value '1.8', but '1.7' is required Error: could not find java.dll

C++ exe傳引數只顯示第一字元解決方案--C++學習

vs2010新建的工程預設是UNICODE格式的; 你寫程式碼的時候按照UNICODE的格式編碼應該就不會出現上面的問題的。 或者你把工程設定成Use Multi-Byte Character Set,方法如下: Project/工程 -> Properties在彈出對話方塊中選擇

製作網路爬蟲中遇到的諸問題及解決方案

def getsourse(self,url): html=requests.get(url) html.encoding='utf-8' return html.text 關於html檔案轉text格式因為uft-8而出現亂碼的問

AI晶片賦能未來城市 地平線款AI解決方案亮相高交會

深圳2018年11月14日電 /美通社/ -- 第二十屆中國國際高新技術成果交易會(簡稱高交會)於2018年11月14日-18日在深圳會展中心舉行。被譽為“中國科技第一展”的高交會作為中國規模最大、最具影響力的科技類展會,以“堅持新發展理念推動高質量發展”為主題,集結了眼下最前沿的高科技

CentOS yum No module named urlgrabber報錯解決方案

我的環境版本資訊如下: CentOS release 6.10 (Final) 執行任何yum命令都出現錯誤:yum No module named urlgrabber,詳細錯誤資訊如下; There was a problem importing one of the Pyth

點選按鈕傳送次請求解決方案

前幾天工作中遇到一個問題,在做使用餘額支付的時候,點選立即購買按鈕會出現一個彈層要求輸入支付密碼,輸完之後點選確認傳送請求。但是在測試的時候發現,在使用餘額支付的時候,第幾次購買就會發送幾次請求,類似於事件疊加。 一開始實現的思路大概就是,點選立即支付按鈕判斷

NLP --- 隱馬爾可夫HMM(第一、第二問題解決方案

上一節我們詳細的闡述了隱馬爾可夫的三個基本問題,結合者背景知識理解這三個問題還是很容易的,因為隱馬爾可夫的提出就是建立在語音識別的基礎上提出來的,因此根據背景知識學習更容易吸收和深入理解,簡單的來說就是物理意義,這裡大家理解演算法類的都儘量通過物理意義進行理解,這樣學習效果會更好,另外就是本節只

SOFAMesh中的協議通用解決方案x-protocol介紹系列(1) : DNS通用定址方案

小螞蟻說: 2018年上半年,螞蟻金服決定基於 Istio 訂製自己的 ServiceMesh 解決方案,並在6月底正式對外公佈了 SOFAMesh 。 在 SOFAMesh 的開發過程中,針對遇到的實際問題,我們給出了一套名為 x-protocol 的解決方案,本文將會對這個解決方案進

SOFAMesh中的協議通用解決方案x-protocol介紹系列(2):快速解碼轉發

2018年上半年,螞蟻金服決定基於 Istio 訂製自己的 ServiceMesh 解決方案,並在6月底正式對外公佈了 SOFAMesh,詳情可直接點選之前的文章檢視:大規模微服務架構下的Service Mesh探索之路 。 在 SOFAM

安裝軟體時依賴衝突的萬能解決方案

宣告 前言 好吧,可能是個標題黨了. 不過如果你這個方法還不能解決依賴衝突,那就我目前就不知道有什麼辦法了. 不過一般情況下,使用這個方法都可以修復問題的. 正文 基礎的解決方案 如果你是剛遇到依賴衝突問題,可以先參考這裡基本的解決方案.