就我而言,我将在以下命令中运行此命令
./gradlew -q projects
它将返回以下输出
Root project 'MyProject'
+--- Project ':app'
\--- Project ':mymodule'
现在我要构建我的':app'
(该应用的运行/绿色播放图标),因此':mymodule'
应该自动构建但不将':mymodule'
作为依赖项包含在':app'
级别build.gradle
在应用程序级别build.gradle文件中类似这样的内容
task gradleBuild(type: GradleBuild ) {
println "gradleBuild task start"
doFirst{
tasks=["mymodule:clean"]
tasks = ["mymodule:build"]
}
doLast {
tasks = ["mymodule:install"]
println 'gradleBuild task end.'
}
}
build.dependsOn gradleBuild
但是它不起作用,我收到如下的错误消息
Task :app:gradleBuild FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Project 'mymodule' not found in project ':MyProject:app'.
在settings.gradle
中,我有这个
include ':app' , ':mymodule'
您需要自动构建库项目(在您的情况下为“ mymodule”,而无需将其包含在应用程序模块的build.gradle文件中,当我们按下“运行/绿色播放”图标时,可以通过以下方法实现。
一般运行图标将被配置为单一配置。这不在项目范围内,而是在模块范围内。因此,当您按图标时,不会构建“ mymodule”,而如果您调用1.从命令行构建gradlew2.同步项目3.单击制作项目
都构建了模块(app和mymodule)。
为了满足您的要求,我们必须编辑Android Studio中的现有应用程序配置以构建“ mymodule” lib项目。
task buildModule(type: GradleBuild) { buildFile = '../mymodule/build.gradle' tasks = ['build'] }