Falta su envoltorio de gradle, está roto o dañado.
Qué es gradle wrapper:
gradlew
es el ejecutable de gradle wrapper: script por lotes en Windows y script de shell en otros lugares. Cuando se invoca el script de contenedor, descarga la versión gradle definida y la ejecuta. Al distribuir el contenedor con su proyecto, cualquiera puede trabajar con él sin necesidad de instalar Gradle de antemano. Aún mejor, los usuarios de la compilación tienen garantizado el uso de la versión de Gradle para la cual fue diseñada la compilación.
Restauración de gradle wrapper:
solía ser necesario agregar una wrapper
tarea a su build.gradle para restaurar gradle wrapper y todas sus dependencias. Por ejemplo:
task wrapper(type: Wrapper) {
gradleVersion = '4.1'
}
Las versiones más nuevas de gradle no requieren esto. Ahora es una tarea incorporada. Solo corre:
gradle wrapper
También puede proporcionar indicadores adicionales para especificar versiones, etc.
gradle wrapper --gradle-version 6.2 --distribution-type all
Cuando ejecuta esta tarea, se agrega un script de envoltura de gradle y los archivos jar necesarios a sus carpetas de origen. Las propiedades se almacenan en gradle / wrapper / gradle-wrapper.properties
(Es posible que necesite instalar gradle localmente para ejecutar esto. brew install gradle
En Mac, por ejemplo. Consulte las instrucciones más detalladas aquí )
¿Por qué faltaba en primer lugar?
OP parece haber eliminado algo de lo que depende el envoltorio de gradle.
Pero una razón común es que una entrada .gitignore evita que los frascos de envoltura se registren en git. Tenga en cuenta que el .gitignore en efecto puede estar en la carpeta de origen, o global en la carpeta de inicio de su usuario o en la configuración global de git. Es común tener una *.jar
entrada en .gitignore.
Puede agregar una excepción para los archivos jar de gradlew en .gitignore
*.jar
!gradle/wrapper/gradle-wrapper.jar
o forzar agregar el frasco de envoltura en git
git add -f gradle/wrapper/gradle-wrapper.jar
ref: Gradle Wrapper
gradle wrapper
nuevamente para regenerar el código faltante ... esto se supone que no tiene una configuración de control de fuente.