¿Por qué tan rojo? IntelliJ parece pensar que cada declaración / método no se puede encontrar / resolver

122

Acabo de instalar y reinstalar IntelliJ. Cada archivo Java aparece en ROJO. Revisé el JDK; está en 1.6. ##. La maven clean installconstrucción funcionó bien.

Recibo los errores resaltados habituales. En cada declaración:

No se puede resolver el símbolo SomeEntityBean / Bean

y en cada método:

No se puede resolver el método SomeFunction ()

¿Cómo soluciono estos errores falsos?

iCodeLikeImDrunk
fuente
1
posible duplicado de la inspección
Zac Thompson

Respuestas:

197

IntelliJ a veces se confunde por sí solo, incluso sin los cambios externos que describió Korgen (aunque esa es una buena manera de reproducirlo de manera consistente).

Haga clic en Archivo -> Sincronizar , e IntelliJ debería ver que todo está bien nuevamente.

Si eso no funciona, los cachés de IntelliJ podrían estar corruptos (esto solía ocurrir con mucha más frecuencia que ahora); en ese caso, regenerarlos

Al hacer clic en Archivo -> Invalidar cachés y reiniciar el IDE

(aunque cargar el proyecto llevará un tiempo mientras se recrean las cachés).

Matt Leidholm
fuente
3
Gracias. Muy útil. Usé 'Invalidar cachés' como último recurso y funcionó.
Oz Molaim
1
Invalidar cachés -> Reinicio de IntelliJ -> Sincronizar funcionó para mí. Gracias.
emrahgunduz
con suerte, eventualmente podrá invalidar y retener la historia local.
ycomp
Salvó mi día. Gracias Matt.
Ashish Singh
50

Experimenté esto cuando actualicé mi JDK manualmente y eliminé el JDK anterior

Palabras clave rojas

Solución

  • En el editor IntelliJ, haga clic en la palabra clave roja ( Integerpor ejemplo) y presione ALT+ ENTER(o haga clic en el icono de la bombilla)
  • seleccione Configurar JDK en el menú de intenciones

Menú de intenciones de IntelliJ

  • haga clic en Configure

Cuadro de diálogo de selección del SDK del proyecto

  • En mi caso, la ruta JDK era incorrecta (apuntada en /opt/jdk1.7.0_51lugar de /opt/jdk1.7.0_65)

Cuadro de diálogo Configurar SDK roto

  • Haga clic en ...y busque la ruta JDK correcta

Cuadro de diálogo Configurar SDK fijo

  • Limpiemos el caché:

Menú Archivo IntelliJ

Y todo debería volver a la vida :)

Sin palabras clave rojas

Jossef Harush
fuente
cómo hacerlo en mac
nil96
32

IntelliJ en algún momento se confunde después de importar proyectos de Maven y luego cambiar poms externamente o generar fuentes fuera de IntelliJ.

Es posible que desee probar un maven-> forzar la reimportación desde intellij en la raíz del proyecto

Korgen
fuente
2
Curiosamente, esto en realidad me causó una "condición de alerta roja" que posteriormente se borraron los cachés invalidantes.
barclay
4
¿Dónde está "maven -> forzar la reimportación"? ¿Dónde está la configuración / opción real para esto?
Stealth Rabbi
@StealthRabbi Haga clic derecho en cualquier lugar sobre la estructura del proyecto, luego Maven> Reimportar ...
Rodrigo Martins de Oliveira
O también puede usar Ctrl + Shift + A, escribir "Reimportar" y elegir entre: "Reimportar" o "Reimportar todos los proyectos Maven" (en caso de duda, reimportar todos).
Rodrigo Martins de Oliveira
7

Mi problema se resolvió cambiando jdk por defecto , así. Se instaló Open Jdk pero no sé por qué intellij estableció la configuración en java-8-openjdk-amd64 . Este fue el problema. He cambiado a default-java y no más error rojo.

ingrese la descripción de la imagen aquí

mnhmilu
fuente
7

En mi caso, las dependencias de getter y setter venían a través del complemento lombok (usando java con Spring). Y en la nueva instalación de intellij idea, no había instalado el complemento lombok. La instalación del complemento de lombok me solucionó.

Parantap Sharma
fuente
Esto es lo que me estaba causando el problema. IntelliJ no entendía los getters y setters generados a través de anotaciones. ¡Gracias por la solución!
Rabowlen
5

Tuve el mismo problema después de cambiar JDK de 1.6 a 1.7 en mi pom.xml y establecer la configuración del proyecto Maven 3 path + JDK en 1.7.

Lo que hizo por mí fue => Archivo -> Invalidar cachés y reiniciar

PD: el problema volvió a ocurrir, así que volví a importar el proyecto completo después de eliminar la carpeta .idea y ahora funciona bien como siempre :)

0x126
fuente
1
Estaba pasando por todos los frutos maduros tratando de que el resaltado funcionara nuevamente y con su comentario me di cuenta de que tal vez OSX destruyó mi 1.6 JDK en una actualización ... lo hizo. Y movió Java de / System / Library a / Library. Gracias por publicar.
rwheadon
Parece que después de la actualización a 1.7 y la idea de actualización solucionaron el problema. no volvió a ocurrir.
0x126
4

Compruebe que tiene una configuración adecuada de JVM SDK en IntelliJ Properties. Si invalidar-cache-and-restart no es suficiente, verifique que esté utilizando el SDK de JVM adecuado, como Java 1.7.

Busque en: Preferencias -> Configuración IDE -> Scala -> JVM SDK

O haga clic con el botón derecho en su proyecto -> Abrir configuración del módulo -> Configuración del proyecto -> Proyecto -> Proyecto SDK -> (Establecer en Java 1.7)

Abra la configuración del módulo -> Configuración de la plataforma -> SDK -> (Asegúrese de que haya un Java 1.7, de lo contrario, deberá agregarlo)

Si ha realizado un cambio, probablemente sea mejor volver a ejecutar Invalidate Cache & Restart.

Peter Dietz
fuente
3

Esto es si ve las clases de Java en rojo y obtiene este error, "No se puede resolver el símbolo" .

Si está importando proyectos en IntelliJ y ninguna de las soluciones anteriores funcionó para usted, pruebe esto. Esto es lo que funcionó para mí cuando todo lo demás falló.

Vaya a la carpeta de su proyecto y cambie el nombre / elimine la carpeta .idea que tiene la configuración de la idea para su proyecto. Esto se habría creado a partir de su antigua versión de IntelliJ. Una vez que haya cambiado el nombre / eliminado la carpeta .idea , importe su proyecto a IntelliJ. Ahora no debería ver ningún error para sus clases de Java. Espero que esto haya ayudado.

Arthas
fuente
Esto es lo único que realmente funcionó para mí después de actualizar IntelliJ. ¡Gracias!
wulftone
3

Si aún recibe este error, incluso después de haber probado todas las otras sugerencias en esta pregunta, ha verificado todas sus configuraciones de JDK, Maven, caché invalidado, sincronizado su espacio de trabajo y reiniciado, pero las cosas aún no funcionan para usted, luego vaya al directorio de su proyecto y elimine toda la .ideacarpeta. Reinicie su IntelliJ; Todos los archivos a .ideacontinuación se crearán recientemente, lo que refleja la situación actual.

Al menos, esto funcionó para mí.

Pastor
fuente
Yo también probé todo y nada funcionó. Por fin, hice una copia de seguridad de la carpeta .idea -> la eliminé -> reabrir el proyecto -> cerrado -> volver a poner la .idea -> reabierto. Creo que para mí algunos archivos en caché no se eliminaron antes.
Vibha
2

Tengo IntelliJ IDEA 12.x en Mac y uso Maven 3 y obtengo el resaltado rojo sobre mi código aunque la compilación de Maven está bien. Ninguno de los anteriores (reindexación, forzar importación, etc.) funcionó para mí. Tuve que hacer lo siguiente:

Intellij -> Preferences -> Maven -> Importing
    [ ] Use Maven3 to import projects

Tengo que marcar la opción de importación de Maven3 y eso soluciona el problema.

pastafarian
fuente
He cambiado a Maven 2y luego, regreso a Maven 3. Estos pasos aparentemente resolvieron el problema para mí.
Chaklader Asfak Arefe
2

¡Otra solución más! Una de las soluciones, que sugería hacer clic Alt Enter, no tenía el Setup JDK para mí, pero Add ... to classpathfuncionó.

NSonmez
fuente
1

Yo tuve el mismo problema.

En mi caso, el problema fue con maven home directoryy user settings fileen Intellij Settings bajo Maven. Había instalado Maven no en el directorio predeterminado y también había cambiado la ubicación del settings.xmlarchivo. Esto también debe cambiarse en la configuración de IntelliJ.

Espero que esto también ayude.

Elio
fuente
0

Intentaba seguir todos los consejos anteriores, pero desafortunadamente nadie me ayudó. Así que finalmente decidí eliminar mi espacio de trabajo de intelij y crear el nuevo; ayudó :) Pero antes también estaba limpiando la caché, reimportando proyectos de maven, limpiando proyectos y reconstruyéndolos.

Marcin Erbel
fuente
0

Tuve el mismo problema y, después de probar todas las sugerencias anteriores, resultó que mi instalación de IntelliJ no había recogido mi variable de sistema JAVA_HOME y no tenía un conjunto de SDK / JDK.

Lo arreglé siguiendo estas instrucciones: Configuración de SDK globales, de proyectos y de módulos

vphilipov
fuente
0

El problema era que el archivo que intentaba importar era tan grande que IntelliJ no ejecutaría ningún CodeInsights en él.

Establecer la idea.max.intellisense.filesizeopción en un valor más alto según las instrucciones de esta respuesta resolvió mi problema.

ecnepsnai
fuente
0

Tuve el mismo problema que estaba usando JDK 1.9 con IntelliJ 14, resolví reinstalar Java con la última versión de JDK 1.8 (1.8.0_161 en este caso)

También eliminé la versión 1.9 de

HKEY_CURRENT_USER \ Software \ JavaSoft \ JRE \ Security Baseline

Sam
fuente
0

Tuve el mismo problema, lo que me solucionó fue:

Ir a File>Setting>Maven, configuro el directorio de inicio de Maven, el archivo de configuración y el repositorio local.

Vaya a Proyectos Maven y haga clic en Reimport All Maven Projects

ingrese la descripción de la imagen aquí

¡Esto hizo el truco!

Mohith Maratt
fuente
0

Tuve este problema en una instalación nueva de IDEA. Pensé que había traído su propio JDK o que podría encontrar el que ya estaba en la máquina, pero aparentemente no (no estoy seguro de qué hizo la casilla de verificación en el cuadro de diálogo de instalación, ahora). Cuando hice clic en la bombilla y en el botón "Configurar JDK" y luego en "Configurar", reveló que estaba tratando de obtener el JDK de

C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2018.1\jre64

Busqué, probando algunas carpetas en el árbol de JetBrains, pero al menos el diálogo fue lo suficientemente inteligente como para no permitirme aplicar ninguna (incluido el original), diciendo que no eran ubicaciones válidas para un JDK. Así que busqué en el árbol de Java y lo intenté, y aceptó esto:

C:\Program Files\Java\jdk1.8.0_40

Después de aceptar la configuración, no parecía haber funcionado; así que intenté invalidar el caché de IDEA y reiniciar (como se describe en otras respuestas), y me dijo que tenía tareas en segundo plano ejecutándose. Así que cancelé la invalidación, y mientras hacía eso, cualquier recompilación o actualización de la base de datos que estaba haciendo se completó, y todo el rojo en la ventana de edición desapareció. Por lo tanto, la configuración de JDK tarda unos segundos (al menos) en establecerse.

Blair Houghton
fuente
0

Intente eliminar el .IntelliJIdea15 (depende de la versión) de C: \ Users \ Username

Cuando inicie IntelliJ, volverá a crear la carpeta.

Sudeep
fuente
0

Otra solución más en IntelliJ Ultimate 2018.2

  • Coloca el cursor sobre la importación marcada en rojo
  • Seleccione la flecha desplegable en la ventana emergente que aparece a la izquierda (abajo)
  • Elija "Agregar biblioteca ... a classpath"

ingrese la descripción de la imagen aquí

Suren Konathala
fuente
0

Resuelto simplemente "Actualizar todos los proyectos de Gradle"

AlexPes
fuente
0

No pude conseguir que ninguna de estas soluciones funcionara para mí. Tuve que ir manualmente a cada método / clase en el que obtuve el error e importarlo manualmente. Después de eso, todo estuvo bien.

Frontera soviética
fuente
0

Usando IntelliJ 2019.3 y un proyecto Gradle dependiente de mi propio proyecto Gradle, lo único que lo solucionó fue Reimport All Gradle ProjectsbajoView -> Tool Windows -> Gradle (y botón de actualización).

Antes de eso, intenté reiniciar el IDE, intenté "Invalidar cachés y reiniciar", intenté Rebuild project, pero ninguno ayudó.

Sajjon
fuente
0

Me enfrento al mismo problema cuando actualicé la versión de Intellij. Se resolvió para mí usando un viejo maven que el que se incluye con el nuevo Intellij.

Vishal T
fuente
0

Pasé la mayor parte del día probando todas las soluciones aquí, pero nada parecía funcionar. Lo único que funcionó para mí fue desinstalar completamente IntelliJ e instalarlo nuevamente. Sin embargo, para mí, cuando eliminé IntelliJ de la carpeta de la aplicación, el problema volvió tan pronto como lo reinstalé. Lo que finalmente tuve que hacer fue usar App Cleaner para eliminar completamente IntelliJ y todos los archivos de configuración y configuración. Después de que hice eso y luego reinstalé IntelliJ, el problema finalmente desapareció. Consulte Cómo desinstalar IntelliJ en una Mac

Ross Mills
fuente
0

Para la edición 2020.1.4 Ultimate, tuve que hacer lo siguiente

View -> Maven -> Generate Sources and Update Folders For all Projects

El problema para mí fue que las bibliotecas no se llenaban mvn -U clean installdesde la terminal.

ingrese la descripción de la imagen aquí

usuario1599755
fuente
0

Intenté invalidar la caché, reimportar el proyecto, cambiar a Maven incorporado, eliminar la carpeta .m2 y sus partes, nada funcionó. Después de haber roto por completo Maven (aunque antes había construido el proyecto con éxito, ahora ya no podía), tuve que reinstalarlo desde cero. ¡Eso ayudo!

Katia Savina
fuente