我有一个像这样的项目布局:
MyProject/
Project/
build.gradle
build.gradle
settings.gradle
thirdparty/
ActionBarSherlock/
actionbarsherlock/
build.gradle
build.gradle
settings.gradle
ActionBarSherlock
目录是一个git子模块,指向ActionBarSherlock的dev
分支,其中包含gradle构建文件。
在MyProject/settings.gradle
我添加了:
include '..:thirdparty:ActionBarSherlock:actionbar'
并在MyProject/build.gradle
添加:
compile '..:thirdparty:ActionBarSherlock:actionbar'
到dependencies
部分。当我使用MyProject/Project
构建gradle assemble
时,出现以下错误:
> Project with path '..:thirdparty:ActionBarSherlock:actionbar' could not be found in project ':MyProject'
我可以使用:
分别构建ActionBarSherlock
cd thirdparty/ActionBarSherlock/actionbarsherlock
gradle assemble
cp build/libs/actionbarsherlock-4.3.2-SNAPSHOT.aar ../../../MyProject/Project/libs
然后在dependencies
的{{1}}部分中将其用作:
MyProject/build.gradle
现在,当我构建compile files('libs/actionbarsherlock-4.3.2-SNAPSHOT.aar')
时,我收到以下错误:
MyProject/Project
答案 0 :(得分:2)
这个google小组得到了Android SDK开发人员Xavier Ducrohet的回答。 https://groups.google.com/forum/#!topic/adt-dev/bPY_Un8BsBY
引用:
依赖于主项目之外的gradle项目 根文件夹,您可以尝试执行以下操作:
包括'abs'
project(':abs')。projectDir = new File('/ some / path / relative / or / absolute')
请注意,您的应用应该使用项目(':abs')进行依赖,因为 gradle路径是:abs,无论磁盘路径是什么。