IntelliJ Build Error Context Mismatch

Quiero utilizar IntelliJ IDEA 15 en lugar de Android Studio, pero tengo un problema con la construcción. Obtuve el siguiente error:

Gradle sync failed: The newly created daemon process has a different context than expected. It won't be possible to reconnect to this daemon. Context mismatch: Java home is different. Wanted: DefaultDaemonContext[uid=null,javaHome=C:\Program Files (x86)\JetBrains\IntelliJ IDEA 15.0\jre,daemonRegistryDir=C:\Users\Tim\.gradle\daemon,pid=1224,idleTimeout=null,daemonOpts=-XX:MaxPermSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xmx1024m,-Dfile.encoding=windows-1252,-Duser.country=DE,-Duser.language=de,-Duser.variant] Actual: DefaultDaemonContext[uid=6fd89265-5686-4337-a75f-538209464d3a,javaHome=C:\Program Files\Java\jdk1.8.0_74,daemonRegistryDir=C:\Users\Tim\.gradle\daemon,pid=14128,idleTimeout=10800000,daemonOpts=-XX:MaxPermSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xmx1024m,-Dfile.encoding=windows-1252,-Duser.country=DE,-Duser.language=de,-Duser.variant] 

¿Cuál es mi error? Como se puede ver en las siguientes imágenes todo está configurado correctamente.

He configurado un JDK y las herramientas de Android como sigue:

Proyecto SDK2 SDK1

Encontré esta pregunta mientras investigaba un problema similar, y resolví el mío, así que tal vez mi experiencia me ayude.

Observaciones

Mi problema era similar al tuyo en que el contexto Wanted tenía el javaHome como la ruta de acceso al JRE incrustado en la carpeta de instalación de IDEA, y el contexto Actual tenía como la primera versión de Java en mi camino. Encontré varios informes de errores similares en línea, pero ninguno tenía la IDEA incorporada JRE como la versión de Wanted .

La versión Wanted Java pasó a ser una instalación de todo el sistema del JRE, y no el JDK que había configurado para el proyecto, ni el valor establecido para JAVA_HOME , que me hizo muy sospechoso (y confundido). Reordenar mi ruta de acceso hizo que usara otra versión "no deseada" de Java, por lo que estaba claramente usando el camino para elegir qué ejecutar, pero no estaba claro por qué. No podía hacer que el JRE integrado de IntelliJ fuera el primero en mi camino, porque necesitaba que fuera el JDK por varias razones, así que necesitaba otra solución.

También noté (usando Process Explorer, ya que estoy en Windows) que, en caso de fallo, IntelliJ lanzó una serie de procesos de daemon de java.exe Gradle, y que definitivamente no había procesos demonio en ejecución antes de que intenté iniciar mi compilación .

Solución

La causa resultó ser que había definido una nueva configuración en el diálogo "Run / Debug Configurations" y poner la ruta completa al archivo build.gradle en el Gradle project: , como sigue. (Hice esto haciendo clic en el botón de puntos suspensivos (…) a la derecha del campo, pero también podría haber ingresado directamente.)

Run / Debug Configurations mostrando el proyecto Gradle como una ruta explícita a un archivo de compilación Gradle

Sin embargo, lo que debería haber hecho fue seguir el patrón en las configuraciones existentes, donde el Gradle project: se especificó como un "proyecto registrado", haciendo clic en el icono "carpeta" a la derecha del campo, resaltado en verde en la siguiente imagen . En este caso, el contenido del campo es sólo el nombre del proyecto y se muestra con colores de fondo / primer plano sutilmente diferentes. (Descubrí accidentalmente que hacer clic con el botón derecho del ratón en este nombre lo reemplazaría con la ruta a la carpeta que contiene build.gradle , pero si cancelas y comienzas a editar la configuración de nuevo, seguirá apareciendo sólo como el nombre del proyecto).

Run / Debug Configurations mostrando el proyecto Gradle como el nombre de un proyecto registrado

Después de realizar este cambio, la configuración se construyó como se esperaba, y observé que sólo se lanzó un java.exe , utilizando la misma ruta JDK que cuando ejecuté tareas desde el panel "Gradle" en la interfaz de usuario.

Lo resolví usando idea64.exe y no idea.exe

Introduzca aquí la descripción de la imagen

Para mí este problema se resolvió mediante la ejecución de IDE en modo de 64 bits ya que sólo tengo 64 bits JRE instalado.

  1. Crear archivo "gradle.properties" en la carpeta% USERPROFILE% \. Gradle \
  2. En este archivo, agregue la cadena "org.gradle.java.home = {ruta real a jdk}"

Tuve exactamente el mismo problema y esto es lo que funcionó para mí.

.project archivos .idea y .project del directorio raíz de mi proyecto IntelliJ. Reinició IntelliJ y volvió a abrir mi proyecto.

Lo que funcionó para mí fue:

  • Desinstalación de intelliJ
  • Reinstale intelliJ, pero durante la instalación asegúrese de NO comprobar "Descargar e instalar JRE de 64 bits por JetBrains (se utilizará con el lanzador de 64 bits)"

Esto hizo que mi proyecto funcionara de nuevo, (en la versión de 32 y 64 bits).

Añada a continuación en su gradle.propetries

Org.gradle.java.home = $ {sdk_path}

por ejemplo:

Org.gradle.java.home = C: \ Archivos de programa (x86) \ Java \ jdk1.8.0_121

De lo contrario, si tiene una advertencia de montón de memoria.

Por favor, agregue también gradle.properties con: org.gradle.jvmargs = -Xmx512m

En mi caso sólo fui a la configuración, buscado JDK, chascado Java Compiler, entonces noté que la versión del bytecode del proyecto faltaba. Así que sólo comprobé 1.8 que es mi versión de compilación de Java. Y eso fue todo para mí.

Introduzca aquí la descripción de la imagen

Simplemente mueva la carpeta jdk a la carpeta deseada intellij C: \ Archivos de programa \ JetBrains \ IntelliJ IDEA Community Edition 2016.3.4 \ jre

Luego cambie los valores en la carpeta .gradle dada en la línea deseada cierre el proyecto y luego reinicie

esto funciona para mi….

He resuelto este problema cambiando el nombre de las carpetas jre y jre64 para evitar que la idea de usarlos y la configuración JAVA_HOME a mi otra instalación JDK 1.8 en el archivo idea.bat.

  • Obtenga el contexto de aplicación de la clase singleton de no actividad
  • Validar cadena con regex en android
  • Cómo encadenar los métodos groupBy () de RxJava como groupBy (). GroupBy ()
  • Principal java.lang.RuntimeException: No se puede iniciar la actividad ComponentInfo
  • AndroidBillingLibrary: Servicio remoto se bloqueó en BillingController.requestPurchase
  • No se puede resolver el host "<url here>"; Ninguna dirección asociada con el nombre de host
  • Usando la intención de llamar a un fragmento de otro fragmento
  • Youtube API v3 buscar videos, recuperar el título y url
  • Android.intent.action.PACKAGE_ADDED BroadcastReceiver no recibe el tema añadido intención en JB 4.1
  • Abrir la aplicación de la galería desde Android Intent
  • La imagen compartida de Android no borra la vista previa de un elemento previamente compartido
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.