phk*_*ter 0 android module build gradle
我有一个摇篮根项目P有两个子项目P:foo和P:bar。自然地,Gradle按照字母顺序构建它们:bar,foo。但是foo当我gradle build在P根目录中说时,我需要首先构建。这是因为bar取决于foo发布到本地Maven存储库的AAR(Android库)工件。这两个bar和foo是这样的Android库项目。
这看起来像是一个简单的问题,但我无法弄清楚。我读到有关内容evaluationDependsOn,因此在bar/build.gradle第一行中说:evaluationDependsOn "foo:"。las,这似乎没有任何作用。这个Gradle功能最终会被破坏吗?
使用compile project,我可以强制foo首先构建,但是那会直接将编译后的类添加到bar,我不需要。
所以我被卡住了。我可以重命名foo为aaa_foo,所有问题都将消失,但我犹豫称其为解决方案。
好吧,让我自己回答这个问题。我想我找到了一个不错的解决方案。
Gradle中的项目依赖项通常通过来表示compile project,它不仅构建另一个项目,而且还将另一个项目的类添加到当前项目的类路径中。如果您只想确保在您之前构建了另一个项目,则可以使用任务依赖项。
在我的Android环境中bar/build.gradle,我说
preBuild.dependsOn ":foo:build"
Run Code Online (Sandbox Code Playgroud)
一切都很好。现在foo总是以前建造的bar。
| 归档时间: |
|
| 查看次数: |
2035 次 |
| 最近记录: |