簡體   English   中英

Android Studio庫項目依賴項

[英]Android studio library project dependencies

我已將一個Android Studio項目導入為另一個項目的庫。 我最初的問題是在這里 直到今天,它一直工作出色。 今天,我完成了對庫的更新(在其自己的項目中)並復制了新文件。 我像以前一樣編輯settings.gradlebuild.gradle文件,但出現錯誤:

Project with path 'Eed:libraries:Overt:Util' could not be found in project ':CES'.

該庫的原始項目的結構如下:

Overt/
 + Visible/
 + Control/
 + CES/
 + Util/

在該項目中, CES取決於Util

dependencies {
    compile 'com.android.support:appcompat-v7:19.+'
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile project(':Util')
}

復制新版本的Overt over時,我修改了項目級別settings.gradle和模塊級別build.gradle

結構體:

Eed/
  Eed/
    libraries/
      Overt/
       + Visible/
       + Control/
       + CES/
       + Util/

settings.gradle

include ':Eed'
include ':Eed:libraries:Overt:Visible'
include ':Eed:libraries:Overt:Control'
include ':Eed:libraries:Overt:Util'
include ':Eed:libraries:Overt:CES'

和build.gradle(Eed模塊)

dependencies {
    compile 'com.android.support:appcompat-v7:+'
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile project('libraries:Overt:Visible')
    compile project('libraries:Overt:Control')
    compile project('libraries:Overt:Util')
    compile project('libraries:Overt:CES')
}

我曾在CES中修改過build.gradle ,但找不到解決方案。 我究竟做錯了什么?

如果您的CES項目仍然具有此依賴關系,那么它看起來就很糟糕:

compile project(':Util')

如果您的依賴項語句使用與settings.gradle中出現的路徑相同的路徑,則效果最好:

compile project(':Eed:libraries:Overt:Util')

我不知道您是否可以建立相對的Gradle項目路徑來引用與引用項目相同級別的兄弟項目。 我的意思是說CESUtil都處於同一級別:Eed:libraries:Overt:您真正想要的是可以使用../Util在文件系統路徑中執行的../Util ,但是我不知道立即知道在Gradle中是否可行。

可能是,如果您希望將復雜的模塊能夠導入到某處並且仍然保持其模塊與相對路徑的關系,那么您可能會提出很多要求。 話雖如此,如果有明確的要求,則可以通過projectDirsettings.gradle中重新映射目錄。 請參閱Gradle子項目名稱與文件夾名稱不同 ,以獲取有關如何開始使用該路徑的提示。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM