You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
26 lines
729 B
26 lines
729 B
# Looks for a gradlew file in the current working directory |
|
# or any of its parent directories, and executes it if found. |
|
# Otherwise it will call gradle directly. |
|
function gradle-or-gradlew() { |
|
# find project root |
|
# taken from https://github.com/gradle/gradle-completion |
|
local dir="$PWD" project_root="$PWD" |
|
while [[ "$dir" != / ]]; do |
|
if [[ -x "$dir/gradlew" ]]; then |
|
project_root="$dir" |
|
break |
|
fi |
|
dir="${dir:h}" |
|
done |
|
|
|
# if gradlew found, run it instead of gradle |
|
if [[ -f "$project_root/gradlew" ]]; then |
|
echo "executing gradlew instead of gradle" |
|
"$project_root/gradlew" "$@" |
|
else |
|
command gradle "$@" |
|
fi |
|
} |
|
|
|
alias gradle=gradle-or-gradlew |
|
compdef _gradle gradle-or-gradlew
|
|
|