Tworzenie niestandardowych skryptów gradle może być uciążliwe, w szczególności dla osób, które nie mają dużego doświadczenia z językiem groovy lub z pisaniem takich skryptów. Wyzwaniem jest także pisanie własnych pluginów – jest bardzo mało materiałów do nauki. Co gorsza, aktualizacje gradle mogą niekiedy popsuć działające wcześniej skrypty, przez co jest ciężko, jest wykryć błąd.
Bardzo pomocnym narzędziem jest wtedy debugger. Uruchomienie go dla skryptu budującego jest prawie tak proste, jak dla zwykłej aplikacji.
Stworzenie konfiguracji
Pierwszym krokiem jest stworzenie zdalnej konfiguracji (Remote Configuration). Wybierz z listy dostępnych konfiguracji uruchomieniowych „Edit Configurations…” .

W oknie „Run/Debug Configurations” naciśnij „+”, który znajduje się w lewym górnym rogu ekranu.

Z rozwijanej listy wybierz „Remote”


Wpisz dowolną nazwę (ja polecam coś w stylu „GradleDebug”), resztę ustawień pozostaw domyślnie i kliknij „ok”.
Breakpoint
W skryptach gradle ustawia się w taki sam sposób brakepoint jak w zwykłym kodzie:

Aplikacja podczas debugowania zatrzyma się dokładnie w tym miejscu i będzie można podejrzeć wszystkie obiekty tak jak w normalnym debugowaniu.
Rozpoczęcie debugowania
Aby uruchomić debugger podczas budowania projektu, musisz do polecenia dodać dodatkowy parametr:
-Dorg.gradle.debug=true
W przypadku gdy będzie to zadanie assembleDebug
, to polecenie wywołane z konsoli będzie miało poniższą formę:
./gradlew assembleDebug -Dorg.gradle.debug=true
Po wywołaniu powyższego polecenia zostanie ono zawieszone do momentu uruchomienia konfiguracji „RemoteDebug”:

Aby uruchomić konfigurację należy nacisnąć ikonkę debuggera wraz z wcześniej utworzoną konfiguracją:

Po naciśnięciu ikonki debuggera, skrypt budowania zatrzyma się w miejscu, w którym został ustawiony breakpoint:

Źródło
https://docs.gradle.org/current/userguide/troubleshooting.html#_attaching_a_debugger_to_your_build