Error de compilación de Gradle después de actualizar a 3.0

Recientemente he actualizado la versión gradle de mi proyecto de 2.14.1 a 3.0. Desde entonces, la generación gradle está fallando cada vez con este error:

Error: Causa: org.gradle.api.internal.tasks.DefaultTaskInputs $ TaskInputUnionFileCollection no se puede convertir en org.gradle.api.internal.file.collections.DefaultConfigurableFileCollection Las posibles causas de este error inesperado incluyen:

  • El caché de dependencias de Gradle puede estar dañado (esto a veces se produce después de un tiempo de espera de conexión de red). Volver a descargar las dependencias y el proyecto de sincronización (requiere red)
  • El estado de un proceso de compilación de Gradle (daemon) puede estar dañado. La detención de todos los daemons Gradle puede solucionar este problema. Detener los procesos de generación de Gradle (requiere reiniciar)
  • Su proyecto puede estar utilizando un complemento de terceros que no es compatible con los otros complementos del proyecto ni con la versión de Gradle solicitada por el proyecto.

En el caso de procesos degradados de Gradle, también puede intentar cerrar el IDE y luego eliminar todos los procesos de Java.

He buscado en google y he encontrado algunas soluciones como ésta, pero nada funciona. ¿Alguien sabe cómo arreglarlo?

Actualice sus herramientas de compilación gradle a la última versión.

Una manera fácil de hacerlo es agregar la última versión de las herramientas de construcción como una dependencia en el archivo build.gradle , por ejemplo:

 dependencies { classpath 'com.android.tools.build:gradle:2.2.0-beta1' } 

A continuación, puede ejecutar gradle tasks y gradle descargará todo lo que necesita.

Después de Android Studio 2.2 estable publicado el 19 de septiembre de 2016, la última versión de las herramientas de construcción es 2.2.0. Así que puedes arreglarlo por:

 dependencies { classpath 'com.android.tools.build:gradle:2.2.0' } 

Como Android Studio 2.4 estable no está listo para lanzar todavía (4 de mayo de 2017), la última versión estable de las herramientas de construcción es 2.3.1.

 dependencies { classpath 'com.android.tools.build:gradle:2.3.1' } 

Si actualiza esta versión de herramientas de compilación a 2.3. *, También debe actualizar la versión de contenedor de gradle a 3.3 en el archivo /yourProjectRoot/gradle/wrapper/gradle-wrapper.properties. (Sé que no está haciendo juego la pregunta Gradle build failing after update to 3.0 , pero le sugiero fuertemente que utilice la última herramienta de la construcción como google recomendada)

BTW: la versión 2.3.1 de la herramienta de construcción sólo existe en jCenter, no MavenCentral, por lo que si se ejecuta en el error a continuación, cuando se ejecuta gradlew línea de comandos en el terminal

 Could not find com.android.tools.build:gradle:2.3.1. Searched in the following locations: https://repo1.maven.org/maven2/com/android/tools/build/gradle/2.3.1/gradle-2.3.1.pom https://repo1.maven.org/maven2/com/android/tools/build/gradle/2.3.1/gradle-2.3.1.jar 

Sólo reemplazar mavenCentral () con jcenter () como

  repositories { jcenter() //mavenCentral() } 

Si utiliza gradle plugin 2.1.3, es fácil de resolver:

Actualice su complemento gradle a la versión 2.2.0-beta1

Notas: esta es una versión beta, tal vez usted puede obtener cualquier otro problema.

https://discuss.gradle.org/t/classcastexception-in-gradle-nightly-3-0-20160609/17979

Feliz codificación

De acuerdo, tengo que trabajar. Para cualquier persona que hace frente al mismo problema la manera que trabajó para mí es como sigue:

  1. Vaya a su carpeta .gradle externa (para mí fue C: \ Users \ drilon.gradle). Dentro de cachés y la carpeta daemon eliminar toda la carpeta de la versión (se ven como este "2.14.1" o "3.0"). También vaya a wrapper -> dists -> eliminar todo allí.
  2. Dentro de su raíz del proyecto (para mí era C: \ Users \ drilon \ AndroidStudioProjects \ PorjectName) ir a la carpeta .gradle y eliminar todo allí.
  3. Reconstruir el proyecto

EDITAR:
Resulta que esta solución estaba poniendo la versión gradle de vuelta a 2.14.1. La solución de ending0421 es la solución de trabajo.

  • Cómo controlar Android Emulator de Gradle
  • Actualización del SDK de Aviary en Android
  • Android Studio no puede resolver el error ': app: preDexDebug'
  • ¿Por qué Android Studio no puede hacer referencia a una biblioteca si se incluye sólo en build.gradle?
  • : App: dexDebug ExecException terminado con un valor de salida diferente de cero 2
  • Android Studio y Gradle, argumento 0 para el parámetro @NotNull
  • Gradle de Android: ¿qué significan los corchetes alrededor de la versión?
  • Android Studio Versión no compatible del complemento Gradle
  • Error com.google.android.gms / play-services / 8.4.0 / gradle: 2.0.0-alpha5
  • Android Studio marca R en rojo con el mensaje de error "no se puede resolver el símbolo R", pero la generación tiene éxito
  • 2 iconos de aplicación después de instalar el release apk, utilizando gradle build
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.