1234567891011121314151617181920212223242526 |
- # 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 [[ -f "$dir/settings.gradle" || -f "$dir/settings.gradle.kts" || -f "$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
|