打包和依賴 AAR 檔案
一、打包 aar
1、單個模組打包
開啟
Gradle
工具視窗,找到Android Library
模組. 在build
任務中雙擊assemble
.執行成功後,在
mylibrary/build/outputs/aar
目錄下找到aar
包.
預設 Debug
和 Release
的 AAR
包都會打出來,當然你也可以選擇只打 Debug
的包,雙擊 assembleDebug
任務就可以了. 只打 Release
的包同理.
2、多個模組打包
當要打包的模組又依賴了其它幾個模組時,常常需要把它們打包成一個 aar
。多模組打包使用 fat-aar,打包關鍵步驟如下:
將下載好的
fat-aar.gradle
build.gradle
中引入apply from: 'fat-aar.gradle'
。或直接引用apply from: 'https://raw.githubusercontent.com/adwiv/android-fat-aar/master/fat-aar.gradle'
新增要打包的工程,使用
embedded
關鍵字。示例程式碼如下:apply from: 'fat-aar.gradle' dependencies { ... embedded project(':DynamicPageLibrary') embedded project(':VideoPlayerLib'
步驟同上《單個模組打包》一致。
二、引入 aar
方法一、通過 libs 引入到 app 中
把
aar
檔案放在libs
目錄下在
app
的build.gradle
中新增如下內容repositories { flatDir { dirs 'libs' } }
之後通過如下方式引入
dependencies { compile(name:'test'
Rebuild project
如果發現引入後無法使用,重啟 Android studio
方法二、把 aar
作為一個庫工程的方式引入
當專案中庫工程較多且依賴關係比較複雜時,最好採用這一種方式。如:某一個庫工程也要引入這個 aar
時。
選單欄
-> File
-> New
-> New Module
-> Import .Jar/.AAR Package
-> Next
-> 選擇 File name
的檔案 -> Subproject name
命名工程
-> Finish
建立完成後是一個工程,工程中包括 aar
檔案和 build.gradle
檔案。build.gradle
檔案內容如下:
configurations.create("default")
artifacts.add("default", file('musiclibrary_20170622.aar'))
三,遇到的問題
Non-constant Fields in Case Labels
原因:在 Android Library 中不能使用
switch case
解決:改成用
else if
,如下圖:java.lang.IllegalArgumentException: No view found for id 0x7f0d013d () for fragment TestFragment
描述:在專案中引用了庫裡的
fragment
,在執行後丟擲了找不到view
的異常。但是在 Demo 專案中執行是沒有問題的。原因:庫裡
fragment
的layoutID
與專案中另外一個Fragment
的layoutID
名字相同,導致專案中的佈局會覆蓋庫中的佈局。。解決:修改為不同的名稱。在庫中要注意資源名稱可能與專案同名的問題,比如在庫中的資原始檔都新增字首或字尾,或較長不容易重複的名字。同名的資原始檔只會存在一個,根據庫的巢狀關係,外層會覆蓋內層的資原始檔。
相關推薦
打包和依賴 AAR 檔案
一、打包 aar 1、單個模組打包 開啟 Gradle 工具視窗,找到 Android Library 模組. 在 build 任務中雙擊 assemble. 執行成功後,在 mylibrary/
打包依賴.aar檔案以及坑總結
一、打包aar 1、單個模組打包 開啟Gradle工具視窗,找到Android Library模組. 在build任務中雙擊assemble. 執行成功後,在mylibrary/build/
Android 打包上傳AAR檔案到本地Maven倉庫並且引用
1.前言 建議電腦端觀看,多圖慎入 平常專案中遇到的一些公共元件,公共模組,多個專案都在使用的情況下,我們一般有以下幾種做法 1.整個module匯入工程,如果module中有什麼bug,修改了還要其他專案再重新新增進去,很不方便 2.module打包A
Android Studio中架包打包和依賴衝突解決
一、為什麼使用aar打包,而不是jar 隨著Android Studio的使用越來越廣泛,使用aar打包這種方式也越來越可行實際。 jar打包只打原始碼,像資原始檔不會打包,而aar恰恰是jar打包的補充完善,它會把程式碼和資源統統打包進一個檔案。 二
Android引入 和打包AAR 檔案
引入 aar 方法一、通過 libs 引入到 app 中 把 aar 檔案放在 libs 目錄下 在 app 的 build.gradle 中新增如下內容 repositories { flatDir { dirs 'libs' }
使用WinRar將Qt編譯生成的exe和依賴的dll檔案打包為一個exe檔案的簡單方法
如題,需要將QtCreator編譯生成的*.exe檔案和它所依賴的動態連結庫(*.dll)檔案打包為一個exe檔案,步驟如下: (1)將編譯生成的AppTest.exe、依賴的庫檔案、圖示檔案等複製到一個新建的資料夾下,如圖: (2)選中所有檔案,滑鼠右鍵,選擇”新增到壓
Android Studio生成和引用.aar庫檔案
先來句綜述:.aar和.jar庫檔案的區別 aar 檔案是建立在 jar 檔案的基礎之上, aar 是 jar 檔案的一個變種。其實他們本質上沒有什麼區別,都是壓縮包,只是能包含的內容不一樣。 jar只包含了class檔案與清單檔案。雖然也能包含資原始檔,但不過是文字資
linux 打包和壓縮檔案 相關命令
bunzip2 file1.bz2 解壓一個叫做 'file1.bz2'的檔案 bzip2 file1 壓縮一個叫做 'file1' 的檔案 gunzip file1.gz 解壓一個叫做 'file1.gz'的檔案 gzip file1 壓縮一個叫做 'file1'的檔
(12/24) css進階:sass檔案的打包和分離
1.安裝sass打包的loader 這裡需要 在專案目錄下用npm安裝兩個包。node-sass和sass-loader,(也可以使用cnpm安裝) 因為sass-loader依賴於node-sass,所以需要先安裝node-sass 1.1 node-sass npm install --s
IDEA常見問題之不能正確打包和讀取到配置檔案xml、properties、conf等
1.不能讀取到一些資料夾下的檔案(pom檔案的引入) <build> <resources> <resource> <directory>src/main/java</di
Android打包aar檔案上傳到JCenter倉庫指南
目錄 說明 操作步驟 總結: 說明 為什麼要將包上傳到JCenter呢? 我們日常開發中,對於一些公共的元件總是打成jar包或aar包來提高利用性,但是如果多個專案中要用到這些jar包就需要將jar包copy到每一個專案中,非常麻煩。 An
分析一個和依賴檔案順序有關的連結錯誤
makefile檔案如下: main: main.c lib/libfoo.so gcc -g -Wall -o main -Wl,-rpath='$$ORIGIN/lib' -L ./lib -lfoo main.c lib/libfoo.so: lib/foo
Android專案將module打包成aar檔案
fat-aar.gradle檔案下載地址: https://github.com/adwiv/android-fat-aar 2.修改build.gradle 在build.gradle中新增:apply from: 'fat-aar.gradle', 注意:這句話要寫在dependencies之上。 之
Android Studio中將moudle專案打包成aar檔案
轉載:https://blog.csdn.net/cangahi09025566/article/details/80278129 為了方便以後好尋找,轉載一篇文章 在android開發中,我們有時候需要將一個專案作為一個依賴,並且能夠使用其資原始檔和介面,這個時候就需要將我們建立的moud
axis2 webService開發(打包aar檔案 )
本文主要是根據他的文章和自己實際開發中遇到的一些問題得出的,你也可以檢視原文 安裝好axis容器、eclipse axis2外掛後就可以用打包aar檔案方式釋出web s
Android 將Android專案打包成aar檔案並在其他專案中引用,打包成jar包
首先說一下jar包和aar包有什麼區別? 1.打包之後生成的檔案地址: *.jar:庫/build/intermediates/bundles/debug(release)/classes.jar *.aar:庫/build/outputs/aar/l
idea中的spring boot maven專案的依賴和pom.xml檔案不一致的解決辦法
今天用idea建立了一個spring boot專案,包含了spring security,在pom檔案和專案依賴都存在security依賴的情況下,對專案的訪問連結都會跳轉到輸入賬號密碼的驗證登入頁面,程式碼和跳轉如下: 為了驗證security的
android studio打包生成aar檔案並在其他工程引用aar包
轉自:http://blog.csdn.net/getchance/article/details/47257389 第一次抄,抄的不好見諒! 一 aar的含義 aar是Android studio下打包android工程中src、res、lib後生成的aar檔案,aar
Maven系列(八)assembly打包-程式和依賴jar包分開化+多環境
前言 上一篇介紹的是“assembly打包-程式和依賴jar包分開化”的配置方法, 這一篇就來介紹下如何多環境的配置,這裡請看清楚,是“程式和依賴jar包分開化+多環境”跟之前的不太一樣哦。 需要修改的配置 專案的目錄結構 pom 新增
Android Studio專案打包AAR,以及專案中嵌入AAR檔案,過程中出現R檔案報錯的坑
這幾天接到新需求,將ec專案嵌入到公司as總專案中,第一次搞,弄了好久,才搞定,入正題. 首先將ec專案匯入as中,解決各種報錯,比如png圖片,.9圖,以及各種不規範的log,吐死之類的,不細說,這個不難. 將專案遷移到AS中,成功執行,OK,開始打包AAR,打包AAR不