Tengo una pequeña pregunta sobre IntelliJ IDEA 11. Acabo de importar un proyecto de Subversion, es un proyecto Maven. Pero tengo un problema en las dependencias de la biblioteca maven, por lo que no puedo incluir todas las dependencias maven automáticamente: IDEA muestra errores de dependencia solo cuando abro esa clase / Eso es lo que obtengo aquí:
Entonces, quiero que todas las dependencias se agreguen automáticamente, ¿es posible o tengo que revisar todos los archivos de clase para identificar y agregar dependencias de Maven?
ACTUALIZACIÓN: Después de hacer algunas modificaciones, encontré cómo resolver mi problema de alguna manera. Eso fue lo que hice:
pero creo que lógicamente no incluirá ni verificará nuevas dependencias más adelante. ¡¿Hay alguna área de configuración para esto en intelliJ: dependencias de exportación automática a classpath?!
fuente
Respuestas:
IntelliJ debe descargar y agregar todas sus dependencias al classpath del proyecto automáticamente siempre que su POM sea compatible y todas las dependencias estén disponibles.
Al importar proyectos de Maven en IntelliJ, generalmente aparece un cuadro de información que le pregunta si desea configurar la importación automática para proyectos de Maven. Eso significa que si realiza algún cambio en su POM, esos cambios se cargarán automáticamente.
Puede habilitar dicha función yendo a Archivo> Configuración> Maven> Importar, hay una casilla de verificación que dice "Importar proyectos Maven automáticamente".
Si eso no ayuda, sugeriría hacer una limpieza completa y comenzar de nuevo:
*.iml
archivos y todas las.idea
carpetas (debe haber una por módulo)mvn clean install
desde la línea de comandoActualización IntelliJ 2016 :
La configuración Importar proyectos de Maven automáticamente se ha movido a Generar, Ejecutar, Implementar> Herramientas de compilación> Maven> Importar en sus preferencias de IntelliJ.
fuente
Arreglo antes de IntelliJ 14
Archivo [menú] -> Configuración -> maven -> importar y desmarcar "usar maven3 para importar proyecto"
ref: http://youtrack.jetbrains.com/issue/IDEA-98425 (que también puede tener algunas otras ideas)
Fix IntelliJ 15+
Me encontré con esto nuevamente, con IntelliJ 15 esta vez, que ya no tiene la opción "usar maven3 para importar". La causa fue que a veces IntelliJ "no analiza correctamente las dependencias de Maven" y, si no puede analizar correctamente una de ellas, aparentemente las abandona a todas . Puede saber si este es el caso abriendo la ventana de herramientas de proyectos maven (menú Ver -> Ventanas de herramientas -> Proyectos Maven). Luego expanda uno de sus proyectos maven y sus dependencias. Si todas las dependencias están subrayadas en rojo, "Houston, tenemos un problema".
En realidad, puede ver la falla real al pasar el mouse sobre el nombre del proyecto en sí.
En mi caso, decía "Problemas: no hay versiones disponibles para XXX" o "No se pudo leer el descriptor del artefacto org.xy.z" ref: https://youtrack.jetbrains.com/issue/IDEA-128846 y https: // youtrack.jetbrains.com/issue/IDEA-152555
Parece que en este caso estaba tratando con un jar que no tenía un archivo pom asociado (en nuestro repositorio maven nexus y también en mi repositorio local). Si este también es su problema, "evite el problema: si no necesita usar clases de ese jar en su propio código (por ejemplo, solo una dependencia transitiva de Maven), puede salirse con la suya comentando desde el pom (temporalmente), vuelva a cargar el proyecto Maven y luego descomente. De alguna manera, después de ese punto, IntelliJ "recuerda" sus antiguas dependencias de trabajo. Agregar una exclusión transitiva maven temporalmente también podría hacerlo, si se encuentra con ella desde una cadena de dependencias transitiva. "
Otra cosa que podría ayudar es usar una "versión más nueva" de maven que la 3.0.5 incluida. Para configurarlo para usar esto como predeterminado, cierre todas sus ventanas intellij, luego abra las preferencias -> compilación, ejecución e implementación -> herramientas de compilación -> maven, y cambie el directorio de inicio de maven, debería decir "Por defecto proyecto "en la parte superior cuando ajusta esto, aunque también puede ajustarlo para un proyecto en particular, siempre y cuando" vuelva a importar "después de ajustarlo.
Borrar cachés
Eliminar las carpetas de caché de intellij (windows: HOMEPATH /. {IntellijIdea, IdeaC} XXX linux ~ / .IdeaIC15) y / o desinstalar y reinstalar IntelliJ. Esto también se puede hacer yendo a Archivo [menú] ->
Invalidate Caches / Restart...
. Haga clicinvalidate and restart
. Esto reindexará todo su proyecto y resolverá muchos problemas difíciles de rastrear con IntelliJ.fuente
Maven home directory
a la versión que usa nuestra pila (3.3.9) solucionó el problema para mí.maven home directory
deBundle (Maven 3)
la ruta donde está instalado mi experto.../maven/3.6.1/libexec
trabajó para míAl importar el proyecto, seleccione en
pom.xml
lugar del directorio del proyecto. Deberia de funcionar.fuente
Intente volver a importar el proyecto desde el panel Proyectos de Maven en IntelliJ IDEA. Debe descargar y configurar todas las dependencias definidas en su
pom.xml
automáticamente.Si la descarga no funciona desde IDEA por alguna razón, intente
mvn install
desde la línea de comandos y vea si se pueden obtener las dependencias.Por supuesto, todas las dependencias requeridas y los repositorios personalizados deben definirse directamente en el
pom.xml
archivo.fuente
Para IntelliJ 2016-2.4 (y creo que otras versiones nuevas):
Ver> Windows de herramientas> Proyectos Maven
En la barra de herramientas recientemente revelada, seleccione la configuración de Maven (icono de un conjunto de herramientas).
Cuando se abra esta pantalla, expanda el menú Maven y haga clic en 'Importar'
Aquí, haga clic en "Importar proyectos Maven automáticamente". También asegúrese de que la opción 'JDK for Importer' coincida con la versión JDK que quiere usar.
Haga clic en Aceptar. Ahora vaya a la dependencia roja en su pom.xml, seleccione la bombilla roja y haga clic en 'Actualizar índices Maven'.
fuente
Lo que me ayudó
Navegación: Configuración | Construcción, Ejecución, Despliegue | Maven
Especifique el "directorio de inicio de Maven": el lugar donde instaló el maven
fuente
Si ciertos módulos de Maven no se están compilando, compruebe si su pom.xml está en la lista de "archivos ignorados". En IntelliJ goto
y verifique si se ignora el pom.xml relacionado.
fuente
Abra
IntelliJ Idea
, vaya a Archivo> Otras configuraciones> Configuración predeterminada ...> Maven (Preferencias)> Importar o |Preferences > Maven > Importing
Haga clic en Habilitar importación automática en la consola.
fuente
Cuando crea un nuevo proyecto simplemente necesita elegir la opción:
...
Importar proyecto desde modelo externo
Crear estructura de proyecto IDEA sobre modelo externo existente (Eclipse, Maven ...)
...
Lo encontrarás bastante directo desde allí.
Y en su caso, puede cerrar su proyecto y simplemente crear uno nuevo. Elija el directorio de su proyecto, que lo anulará, convirtiéndolo en un proyecto Maven.
fuente
Importar dependencias de Maven puede no funcionar si importa la misma ruta varias veces. Esto puede suceder automáticamente después de importar un proyecto Maven existente. No puedo entender por qué sucede esto, así que me inclino a pensar que es un error.
Por ejemplo, si mi proyecto es
Las tres rutas pueden importarse como nodos superiores:
Si tal es el caso, las dependencias parecen ser correctas, pero no se utilizarán hasta que elimine las rutas superfluas (en este caso,
src/main
ysrc/test
). Una vez que haga esto, actualice y haga clic en Compilar> Reconstruir proyecto. IDEA recogerá las dependencias.Un síntoma de este problema es que IDEA le advierte de una ruta duplicada cuando verifica manualmente una biblioteca (segunda captura de pantalla en la pregunta).
Hay varias formas de volver a leer las dependencias en caso de que lo necesite. Si va a la pestaña "Proyectos Maven", hay un icono "Reimportar todos los proyectos Maven" en la parte superior izquierda de la pestaña. Si sospecha que IDEA se confundió, puede hacer clic en Archivo> Invalidar cachés.
fuente
Vaya a la estructura de su proyecto, en Configuración del proyecto, Módulos, seleccione la tabla de dependencias. Para cada dependencia, cambie el alcance de 'Prueba' a 'Compilar'.
fuente
Reimportar el proyecto. Si instala el complemento maven, puede usar esto.
Haga clic derecho en el proyecto -> Maven -> Reimportar
fuente
Primero verifique la ruta especificada para el archivo de configuración del usuario: en Configuración -> Compilación, Ejecución, Desarrollo -> Herramientas de compilación -> Maven . El campo debe tener la ruta de la settings.xml de su maven. Además, settings.xml debe tener la ruta correcta del repositorio remoto.
fuente
Tuve un problema similar, en mi caso estoy usando una costumbre
settings.xml
que no fue seleccionada de IntelliJ.Solución:
File > Settings > Build, Execution, Deployment > Maven: User settings file
(elija aquí mi configuración personalizada.xml).fuente
Tuve el mismo problema y probé todas las respuestas mencionadas aquí, ninguna funcionó.
La solución simple es ir a la carpeta del proyecto y eliminar todos los archivos .idea e .iml y reiniciar el IntelliJ ide. Funciona. No es necesario hacer nada con la configuración.
fuente
Me encontré con el problema de que algunas subdependencias no podían resolverse en IntelliJ 2016.3.X. Esto podría solucionarse cambiando
Maven home directory
en Configuración> Compilación, Ejecución, Implementación> Herramientas de compilación> Maven deBundled (Maven 3)
a/usr/share/maven
.Después de eso, todas las subdependencias se resolvieron como en versiones anteriores de IntelliJ.
fuente
Maven - Reimport no funcionó para mí. Tengo el proyecto Spring en STS (Eclipse) y mi solución es importar el proyecto a IDEA de la siguiente manera:
1) Archivo - Nuevo - Proyecto de fuentes existentes ... - seleccione el directorio - elija Eclipse.
2) Establezca la importación automática de Maven en verdadero en la configuración.
3) Luego haga clic derecho en pom.xml y elija Agregar como proyecto Maven.
Después de esto ha importado todo.
fuente
Tuve el problema similar con mi macbook, solo hice un pequeño cambio
pom.xml
y comenzó a descargar todas las dependencias:Las dependencias anteriores se escribieron de la siguiente manera para mi máquina Windows:
Me acaba de quitar los
<dependencies>
y</dependencies>
las etiquetas y comenzó a descargar todas las dependencias:No estoy seguro de que funcione para usted o no ... pero funcionó bien para mí.
Gracias
fuente
Si en la esquina inferior derecha dice "2 procesos en ejecución ..." o similar, es posible que deba esperar a que termine, ya que puede llevar tiempo descargar todos los archivos jar.
fuente
Resolví este problema actualizando mi archivo settings.xml con la configuración correcta del espejo, parece que intellij intentará descargar metadatos del repositorio cada vez que se importe el módulo maven.
fuente
Secuestrando un poco para agregar lo que terminó funcionando para mí:
Vaya a la
Maven Projects
barra lateral en el borde derecho del IDE y verifique que sus dependencias se enumeren correctamente debajo de su módulo allí. Suponiendo que lo sean, solo pídale a IDEA que vuelva a importar (el primer botón en la parte superior parece dos flechas azules que forman un círculo en sentido antihorario).Una vez que hice eso, y dejé que IDEA volviera a cargar el proyecto por mí, todas mis dependencias se entendieron mágicamente.
Para referencia: esto fue con
IDEA 13.1.2
fuente
Me enfrenté al mismo problema e intenté todo lo sugerido que no resolvió el problema, estaba usando Intellij versión 13.1.3
Finalmente, después de pasar más de un par de horas tratando de solucionarlo, decidí probar una versión actualizada y abrí el proyecto en la versión 14.1.4 que finalmente resolvió el problema. Creo que esto es un error probable en la versión anterior.
¡Espero que esto ayude!
fuente
Pude resolverlo eliminando módulos innecesarios de Configuración del proyecto -> Lista de módulos .
Resulta que estos módulos adicionales fueron creados automáticamente por IntelliJ IDEA cuando creé el proyecto IntelliJ importando desde la carpeta del proyecto (en lugar de abrir pom.xml). Luego, después de declarar el proyecto como proyecto Maven, se crearon los módulos adecuados y los módulos existentes estaban en conflicto con ellos. También es posible excluir esos módulos durante la creación del proyecto.
fuente
Lo que funcionó para mí fue eliminar la carpeta .idea del directorio del proyecto y luego volver a importar el proyecto como un proyecto Maven.
fuente
En mi caso, uno de los módulos fue ignorado por alguna razón. Para resolverlo: haga clic con el botón derecho en el módulo problemático y elija "No ignorar proyectos".
fuente
En mi caso, la ruta para JAVA utilizada por MAVEN no se configuró como JAVA_HOME como se configuró en la máquina. Por lo tanto, ni siquiera estaba tratando de descargar las dependencias. Pasos que seguí que resolvieron este problema,
Se verificó la ruta JAVA, Configuración >> Construir >> Herramientas de compilación >> Importar >> JDK para importador . Se lo señaló a JAVA_HOME.
mvn clean install -U
Se utilizó el comando anterior para forzar la descarga de dependencias.
Re importó proyectos Maven
fuente
Si todo lo demás falla, verifique si el archivo jar en su repositorio local .m2 es realmente válido y no está dañado. En mi caso, el archivo no se había descargado completamente.
fuente
En maven, las dependencias se incluyeron para mí cuando eliminé la sección xml de dependencyManagement y solo tuve dependencias directamente en la sección del proyecto
fuente
El problema parece ser que a pesar de enumerar sus dependencias en pom.xml, IntelliJ IDEA no reconstruye esas dependencias cuando ejecuta su proyecto.
Lo que funcionó para mí es esto:
Vaya a 'Ejecutar' -> 'Editar configuraciones ...', busque su aplicación, asegúrese de que la sección "Antes del lanzamiento:" esté expandida, haga clic en el signo más verde y seleccione "Crear proyecto".
fuente
pude arreglar el mío agregando estas líneas de código después de la etiqueta de compilación en el archivo pom.xml, lo comparé desde mi proyecto en ejecución y descubrí que esa era la diferencia, ahora estoy bien.
fuente