2013-07-07 177 views
1

我在使用Gradle在Android上構建項目時遇到問題。Android Gradle模塊依賴

我有一個項目的結構如下:

root 
settings.gradle 
build.gradle 

    - Project 1 (android studio "module") 
     build.gradle 

    - Project 2 (android studio "module") 
     build.gradle 

如果我選擇項目1和編譯,它的工作原理 如果我選擇項目2和編譯,它的工作原理以及

現在,我想從項目2中獲得項目1的依賴,以重用我的一些應用程序邏輯。

繼DOC我嘗試在項目2的build.gradle

dependencies { 
    compile project(':Project1') 
} 

,但它不工作補充。

我settings.gradle包含:

include ':Project1', ':Project2' 
+0

歡迎來到Stackoverflow!如果您發現回覆有幫助,請投票。如果回覆成功回答您的問題,請點擊旁邊的綠色複選標記以接受答案。請參閱stackoverflow.com/questions/how-to-ask獲取關於如何編寫一個好問題的建議 – buzeeg

回答

1

您應該應用插件的Android庫庫中的項目(PROJECT1):

buildscript { 
    repositories { 
    mavenCentral() 
    } 

    dependencies { 
    classpath 'com.android.tools.build:gradle:0.5.+' 
    } 
} 

apply plugin: 'android-library' 

android { 
    compileSdkVersion 17 
} 

鏈接到Gradle documentation有關使庫項目。

0

如果你想重新使用Project1中的一些邏輯,你應該創建一個庫項目Project3-lib。將您的可重用代碼移動到這個新項目並讓Project1和Project2依賴它。

這是你如何做到這一點:

settings.gradle

include ':Project3-lib', ':Project1', ':Project2' 

在你PROJECT1Project2的你添加新的lib項目

dependencies { 
    compile project(':Project3-lib') 
} 

在您的top-水平gradle.build文件(這樣你不需要它在所有項目的構建文件)

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.5.6' 
    } 
} 

在新的項目3-lib的項目,你必須應用的Android庫插件,而不是android插件

apply plugin: 'android-library' 
相關問題