2014-01-16 86 views
9

我正在將一個項目從Eclipse遷移到AndroidStudio。我在這個項目中有一個用作lib的項目。這個庫被稱爲PullToRefresh。如何在Android Studio項目中包含庫模塊依賴項?

我已經嘗試了很多方法來導入這個項目到AS,但任何我嘗試的作品。

在我的項目我有這樣的文件夾結構:

Project Root 
+-- app 
| +-- builds 
| +-- libs 
| | +-- PullToRefresh (my lib project) 
| +-- src 
| | +-- main (java code and resources) 

在的build.gradle,我試着這樣做:

dependencies { 
    compile project(":libs:PullToRefresh") 
} 

但我收到此錯誤信息:

Gradle 'my_project' project refresh failed: Project with path ':libs:PullToRefresh' 
could not be found in project ':app' 

回答

31

Android的工作室工作在項目模塊概念,所有您的模塊應位於根目錄(您的項目目錄)中。一個模塊可以依賴於其他模塊/模塊。您的庫在同一個項目下被視爲不同的模塊,您的主模塊(您的案例中的應用)依賴於它們。

更改您的項目結構有點:

Project Root 
+-- libs 
    +-- PullToRefresh (my lib project) 
+-- app 
| +-- builds 
| +-- src 
| | +-- main (java code and resources) 
    +-- ..... 
+--settings.gradle 

包括此行您settings.gradle

include ':libs:PullToRefresh' 

你的build.gradle看起來不錯。我建議你將你的目錄名從libs改爲library,因爲你的jar依賴項使用libs而不是模塊依賴項。

,並保持這在主模塊的build.gradle文件:

dependencies { 
    compile project(":libs:PullToRefresh") 
} 
+0

謝謝。有用! = D 並感謝您的提示。 – androidevil

+2

Settings.gradle應該是一個更高的目錄級別,直接在項目根目錄下。雖然如果它的工作,那麼這對我來說有點神祕。 –

+0

@ScottBarta ya :)我認爲我在繪畫方面很差。其實它在Android工作室看起來像這樣,所以我這樣做了,我再次檢查它的錯誤。我感覺和你在發帖後說的一樣。如果它有誤導性,請稍作修改。 – pyus13

4

使用說明 - >鍵入「導入模塊」,然後威澤德才會出現!

相關問題