參考: https://stackoverflow.com/questions/16588064/how-do-i-add-a-library-project-to-android-studio
提示:
Eclipse工作空間(workspace) = Android Studio項目(Project)
Eclipse項目(Project) = Android Studio模塊(Module)
Eclipse多個工作空間可以導入共享同一個項目(不勾選Copy projects into workspace);
然而Android Studio提供的import moudle直接導入模塊,默認會復制一個副本模塊到AS當前文件夾;
所以不能使用這個功能, 要通過配置Gradle來實現(xiàn)共享其它項目的模塊!
實例
在ProjectB中如何使用ProjectA的模塊moduleLib ?
D:/ProjectA/
- moduleLib/
- build.gradle
- build.gradle
- settings.gradle
D:/ProjectB/
- app/
- build.gradle
- build.gradle
- settings.gradle
方法一
1.在ProjectB/settings.gradle下,導入ProjectA的模塊moduleLib
include ':moduleLib'
project(':moduleLib').projectDir = new File(settingsDir, '../ProjectA/moduleLib') // settingsDir是指settings.gradle文件目錄
// project(':moduleLib').projectDir = new File('D:/ProjectA/moduleLib') // 絕對路徑
2.在ProjectB/app/build.gradle下,添加依賴
dependencies {
compile project(':moduleLib')
}
注: ..代表settingsDir目錄的上一級目錄
方法二
1.在ProjectB/settings.gradle下,導入ProjectA的所有模塊
include ':ProjectA'
project (':ProjectA').projectDir = new File('../ProjectA')
include ':ProjectA:moduleLib'
2.在ProjectB/app/build.gradle下,添加依賴
dependencies {
compile project(':moduleLib')
}
方法三
1.在ProjectB/settings.gradle下,導入ProjectA的模塊moduleLib
include ':..:ProjectA:moduleLib'
2.在ProjectB/app/build.gradle下,添加依賴
dependencies {
compile project(':..:ProjectA:moduleLib')
}
注:僅推薦方法一惨险,因為方法二和三混雜Project和Model同時使用容易混亂友雳!
簡書: http://www.reibang.com/p/47156a6be8ce
CSDN博客: http://blog.csdn.net/qq_32115439/article/details/76039327
GitHub博客: http://lioil.win/2017/07/24/Android-AS-moudle.html
Coding博客: http://c.lioil.win/2017/07/24/Android-AS-moudle.html