从任何位置执行gradle构建任务

时间:2014-09-03 07:44:56

标签: build gradle gradlew

我试图从项目文件夹本身以外的其他位置构建我的gradle项目,但它总是说它找不到构建任务。

到目前为止我尝试了什么:

  

sudo ./myprojects/myapp/gradlew build

     

sudo ./myprojects/myapp/gradlew ./myprojects/myapp/build

如何从任何位置执行gradle构建任务?

3 个答案:

答案 0 :(得分:14)

许多人编写(和发布)脚本以从任何子项目目录(在多项目构建中)执行gradlew。要从任何子目录可靠地执行Gradle,必须设置"当前项目目录"通过-p。将此限制解除会很好(这会产生一个很好的功能请求)。

答案 1 :(得分:0)

您可以尝试使用此脚本,该脚本长达90行:https://github.com/dougborg/gdub

或者使用我自己使用的这种简单的单线:

function lookupgradle() { 
  find . .. ../.. ../../.. ../../../.. ../../../../.. ../../../../../.. -name 'gradlew' -executable -print -quit
}

alias g='$(lookupgradle)'

如果发现仍然需要指定项目目录,请添加-p .

alias g='$(lookupgradle) -p .'

答案 2 :(得分:0)

./usmobile-microservice/gradlew -p ./usmobile-microservice clean buildUI

./project_directory/gradlew -p ./project_directory clean build

为我工作