java.lang.NullPointerException (sin mensaje de error)

81

Sé que esta pregunta me ha sido formulada muchas veces y seguí la mayoría de las respuestas, pero ninguna me ayudó. Así que este es mi problema, siempre que sincronizo mi proyecto siempre falla. Así es como se ve la consola de Gradle:

Ejecución de tareas: [: app: generateDebugSources,: app: generateDebugAndroidTestSources,: app: mockableAndroidJar,: app: prepareDebugUnitTestDependencies]

La configuración bajo demanda es una característica de incubación. La compilación incremental de Java es una función de incubación. : app: preBuild UP-TO-DATE: app: preDebugBuild UP-TO-DATE: app: checkDebugManifest: app: preReleaseBuild UP-TO-DATE: app: prepareComAndroidSupportAnimatedVectorDrawable2420Library: UP-TO-DATE: app: prepareComAndroidV72420AppLibrary aplicación: prepareComAndroidSupportDesign2420Library ARRIBA AL DÍA: app: prepareComAndroidSupportMediarouterV72300Library ARRIBA AL DÍA: app: prepareComAndroidSupportRecyclerviewV72420Library ARRIBA AL DÍA: app: prepareComAndroidSupportSupportCompat2420Library ARRIBA AL DÍA: app: prepareComAndroidSupportSupportCoreUi2420Library ARRIBA AL DÍA: app: prepareComAndroidSupportSupportCoreUtils2420Library UP- HASTA LA FECHA: aplicación: prepareComAndroidSupportSupportFragment2420Library ACTUALIZADA: aplicación:

  • Qué salió mal: java.lang.NullPointerException (sin mensaje de error)

  • Prueba: Ejecuta con la opción --stacktrace para obtener el seguimiento de la pila. Ejecute con la opción --info o --debug para obtener más resultados de registro.

CONSTRUCCIÓN FALLIDA

Tiempo total: 7.518 segundos

Y estas son mis dependencias

dependencies {
   compile fileTree(dir: 'libs', include: ['*.jar'])

    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:24.2.0'
    compile 'com.android.support:design:24.2.0'
    compile 'com.google.android.gms:play-services:9.4.0'
    testCompile 'junit:junit:4.12'
    compile 'com.google.android.gms:play-services-location:9.4.0'
    compile 'com.google.android.gms:play-services-appindexing:9.4.0'
    compile 'com.google.firebase:firebase-messaging:9.2.0'
    compile 'com.google.firebase:firebase-database:9.0.2'
    compile 'com.firebase:firebase-client-android:2.4.0'
    compile 'com.google.firebase:firebase-core:9.4.0'
}

apply plugin: 'com.google.gms.google-services'

¿Cómo resolver el problema?

Sweetzyl pili
fuente
3
Estaba teniendo el mismo problema en este momento. Construir -> Proyecto limpio, luego volver a ejecutar funcionó para mí.
w3bshark
algunas veces Android Studio no identifica errores como. 1.error sintaxis, 2.resources no encontraron, en 3.changes código .. y otros .. Mi caso no ha encontrado cambios ..
marlonpya
@marlonpya echa un vistazo aquí , lo más probable es que el problema sea con gradle.properties.
cambio el
Cada vez que actualizo Android Studio, suceden cosas raras como esta. La construcción limpia de w3bshark funcionó para mí.
Dale

Respuestas:

189

He suprimido .gradle carpeta del proyecto y fue capaz de reconstruir de nuevo.

NB: Haga una copia de seguridad, por si acaso.

rastik
fuente
¿A qué archivo gradle te refieres?
sweetzyl pili
6
En la carpeta raíz de su proyecto, hay una carpeta ".gradle". Elimínelo y reinicie Android Studio, se volverá a crear durante la compilación.
rastik
¿Se han enfrentado a algo parecido a esto? ( stackoverflow.com/questions/39749380/… ). Esto ciertamente no funcionó para mí: / @rastik
Siddhant Rimal
No puedo encontrar ninguna carpeta .gradle en la carpeta de mi proyecto, solo la carpeta gradle pero no .gradle, estoy usando MAC, ¿alguna1 resuelve esto?
aznelite89
5
eliminar .gradle no funciona con otras soluciones? Veo esta carpeta compileDebugJavaWithJavac en la carpeta app-tmp y tiene una carpeta vacía llamada emptySourcePathRef ... el proyecto de limpieza elimina esta carpeta, así que supongo que es así, pero todavía aparece el error
Aalap Patel
28

Este problema se creó cuando el sistema se reinició repentinamente, luego el archivo gradle se corrompió. y ese archivo dañado en caché, por lo que debemos eliminar este archivo de su proyecto

your_project_path/.gradle/2.14.1/taskArtifacts

Se volverá a generar.

Luego reinicie el estudio de Android y vuelva a compilar el proyecto.

fuente: https://code.google.com/p/android/issues/detail?id=220741#c13

Me ha funcionado.

Kona Suresh
fuente
Solo una nota, asegúrese de cerrar la ventana de todos los proyectos para reiniciar Android Studio, no solo la ventana del proyecto.
Fruta
funciona para mí (pb con ionic (Ionic CLI): 3.19.0) Error en la ejecución de la tarea ': compileArmv7DebugJavaWithJavac'. > java.lang.NullPointerException (sin mensaje de error)
m50
3

Si todavía tiene este problema, incluso después de eliminar la carpeta .gradle en la ruta de su proyecto, como se sugirió anteriormente , elimine todos los procesos de Java que se ejecutan en el administrador de tareas e intente actualizar su Android Studio .

Estaba en la misma situación pero ahora funciona bien.

¡Espero eso ayude!

Geraldo Neto
fuente
2

Tengo el mismo problema cuando la versión de Java es 1.9

jenv use java 1.8 

todo problema está resuelto.

zhen ella
fuente
1

Es probable que el problema sea el archivo gradle.properties. Si escribe ./gradlew tasksen la terminal, verá el error que mencionó, pero ./gradlew tasks --infomuestra más detalles sobre el error. Para mí, en todos mis proyectos, fue el mismo mensaje de error:

Java home is different.
Wanted: DefaultDaemonContext[uid=null,javaHome=/Library/Java/JavaVirtualMachines/jdk-10.jdk/Contents/Home,daemonRegistryDir=/Users/christian/.gradle/daemon,pid=66346,idleTimeout=null,daemonOpts=-XX:MaxPermSize=512m,-XX:+HeapDumpOnOutOfMemoryError,-Xmx1536m,-Dfile.encoding=UTF-8,-Duser.country=US,-Duser.language=en,-Duser.variant]
Actual: DefaultDaemonContext[uid=4bf81505-0eab-4f50-859a-8c9c616b97e5,javaHome=/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home,daemonRegistryDir=/Users/christian/.gradle/daemon,pid=65018,idleTimeout=10800000,daemonOpts=-XX:MaxPermSize=512m,-XX:+HeapDumpOnOutOfMemoryError,-Xmx1536m,-Dfile.encoding=UTF-8,-Duser.country=US,-Duser.language=en,-Duser.variant]

Solución: (no es necesario editar .bash_profileo degradar gradle o eliminar gradle.folder ).

  • Agregue org.gradle.java.home=pathgradle.properties. donde pathestá la ruta de Java de Android Studio (la casa de Java real se indica en el --inforegistro). Para mi es/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home , para ti, el camino podría ser diferente.

Así es como se ve mi archivo gradle.properties después del cambio:

org.gradle.java.home=/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home
org.gradle.daemon=true 

Notas : El espacio entre " Android Studio " en la ruta es intencional, no funciona si se usa un guión bajo. \Se permiten caracteres de escape pero no son necesarios:...Android\ Studio.app/Contents/jre....

También he habilitado el corredor de compilación de demonios, pero no es necesario para que gradlew ejecute sus tareas. Si su error de puntero nulo es diferente, use--info para apuntar en la dirección correcta.

Estoy corriendo:

Android Studio 3.1.4 (on a Mac 10.13)
java version "10"
classpath 'com.android.tools.build:gradle:3.1.4' (dependency)

¡Espero que ayude a alguien!

chornge
fuente
cuando estoy ejecutando el comando ./gradlew tasks, entonces no tengo ningún problema, pero en el momento de la compilación me mencionan el problema.
Anuj
0
compile 'com.google.android.gms:play-services-location:9.4.0'
compile 'com.google.android.gms:play-services-appindexing:9.4.0'
compile 'com.google.firebase:firebase-messaging:9.2.0'
compile 'com.google.firebase:firebase-database:9.0.2'

No estoy seguro de que este sea el culpable, pero aquí tienes bastante problema con las versiones usadas. Intente utilizar versiones recientes o al menos la misma para todos los componentes relacionados.

Esta herramienta puede ayudarlo a mantenerse sincronizado en el futuro: https://github.com/ben-manes/gradle-versions-plugin

Marcin Orlowski
fuente
0

Tuve un problema similar al importar firebase a mi proyecto. En primer lugar, asegúrese de seguir los pasos del tutorial correctamente y de haber importado el archivo .json proporcionado en el directorio correcto.

Además, dado que firebase v9.0 se ha implementado en los servicios de Google Play, para que Firebase funcione correctamente, asegúrese de que los servicios de Google Play estén actualizados en el dispositivo que está probando.

También encontré que esta respuesta es útil para resolver mi problema https://stackoverflow.com/a/37310513/6728099

sketch204
fuente
en realidad, incluso antes de importar firebase, todavía tiene el mismo error. Acabo de agregar la base de fuego para poder continuar con mi proyecto. De hecho, creé una aplicación ficticia para verificar si seguí correctamente el tutorial. También actualicé mi AS y el SDK, pero no resolvió el problema.
sweetzyl pili
0

Elimine las siguientes líneas de las dependencias, porque ya compila la dependencia completa de los servicios de juego

    compile 'com.google.android.gms:play-services-location:9.4.0'
    compile 'com.google.android.gms:play-services-appindexing:9.4.0'
Yogesh Rathi
fuente
1
Reconstruye tu proyecto
Yogesh Rathi
Use firebase y play service 9.0, lo estoy usando y luego funciona perfectamente, así que puede verificar nuevamente con la versión 9.0
Yogesh Rathi
Reconstruí muchas veces. En lugar de resolver el problema, obtuvo más NullPointerException: null.
sweetzyl pili
¿Ha integrado la biblioteca de soporte multidex?
Yogesh Rathi
sí, lo hice de esta manera. defaultConfig {... multiDexEnabled true} buildTypes {release {minifyEnabled true proguardFiles getDefaultProguardFile ('proguard-android.txt'), 'proguard-rules.pro'}} ¿Es esto correcto? Y también ya verifiqué la versión 9.0 del servicio de juego y firebase todavía tiene el mismo error.
sweetzyl pili
0

Compruebe su app/build.gradle. Mi problema era 'una dependencia.

Pablo Cegarra
fuente
0

Estaba obteniendo una NPE debido a la versión jdk, la degradación de 11 a 8 resolvió este problema

Para eliminar jdk 11

sudo rm -rf /Library/Java/JavaVirtualMachines/jdk-11.0.2.jdk

org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:kaptDebugKotlin'.
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:110)

Caused by: java.lang.NullPointerException
    at org.gradle.workers.internal.DefaultWorkerExecutor$2.transform(DefaultWorkerExecutor.java:164)
    at org.gradle.workers.internal.DefaultWorkerExecutor$2.transform(DefaultWorkerExecutor.java:161)
    at org.gradle.util.CollectionUtils.collect(CollectionUtils.java:204)
    at org.gradle.util.CollectionUtils.collect(CollectionUtils.java:187)
    at org.gradle.util.CollectionUtils.collect(CollectionUtils.java:191)
    at org.gradle.workers.internal.DefaultWorkerExecutor.getDaemonForkOptions(DefaultWorkerExecutor.java:161)
    at org.gradle.workers.internal.DefaultWorkerExecutor.submit(DefaultWorkerExecutor.java:96)
    at org.jetbrains.kotlin.gradle.internal.KaptWithoutKotlincTask.compile(KaptWithoutKotlincTask.kt:75)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
AntPachon
fuente
0

Para mí trabajó para borrar la memoria caché Gradle en el nivel de directorio de usuario: /Users/<username>/.gradle/cache. La --infoopción mostró una inconsistencia allí.

Sandro
fuente