我们正在尝试开发 2 种 gradle 口味以加快我们的开发过程:
- 将我们的库编译为模块的本地风格
- 使用我们图书馆最新快照的远程风格
我在 gradle 中声明了两种口味:
productFlavors {
local {}
remote {}
}
现在,让我们假设我们的本地和远程库都可以作为本地模块使用(用于调试目的)。我在这里创建了一个示例项目。由于每个库都有也应该是本地或远程的子库,我添加了:
dependencies {
localCompile project(path: ':mylibrary', configuration: "localDebug")
remoteCompile project(path: ':mylibrary2', configuration: "remoteRelease")
}
现在变得棘手了。如果我打电话gradle assembleLocalDebug
,我会得到这条线:
:mylibrary2:compileRemoteReleaseJavaWithJavac UP-TO-DATE
对于示例应用程序,它会编译。但在我们的例子中,我们有一个项目,在 SNAPSHOTS 中找不到最新功能(因为它们尚未发布)。这不应该发生,因为我们是在本地构建的。有什么办法可以防止 gradle 编译远程风味?