我试图从项目文件夹本身以外的其他位置构建我的gradle项目,但它总是说它找不到构建任务。
到目前为止我尝试了什么:
sudo ./myprojects/myapp/gradlew build
sudo ./myprojects/myapp/gradlew ./myprojects/myapp/build
如何从任何位置执行gradle构建任务?
答案 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
为我工作