java - run - IntellijIDEA no reconoce clases especificadas en dependencias Maven




run maven project intellij (9)

Tengo un proyecto en IntellijIDEA que fue creado con Maven. Luego especifiqué un conjunto de dependencias y repositorios externos en el archivo Pom.xml.

El proyecto funciona bien en la línea de comandos si hago "mvn install". Cuando abro cualquiera de los archivos de código en el IDE, aunque dice que no se reconocen todas las clases manejadas por las dependencias de Maven, como lo haría con un proyecto normal si nunca añadí los JAR requeridos a la ruta de compilación.

Sé en mis proyectos de Eclipse Maven (en lugar de IntelliJ) que generalmente muestra un directorio adicional a la izquierda que dice "Dependencias Maven" y enumera los archivos JAR extraídos vía maven. No veo eso aquí. ¿Qué estoy haciendo mal?

Así es como se ve mi pantalla:


Después de instalar IntelliJ IDEA en una computadora nueva, me encontré con el mismo problema.

Tuve que actualizar el repositorio maven remoto. ( Settings > Maven > Repositories )

Ambos repos locales y remotos necesitaban ser actualizados. El control remoto no fue actualizado nunca antes. Después de un reinicio todo funcionó bien. Es posible que deba volver a importar su proyecto.


El problema fue causado por mí al seleccionar el directorio del proyecto que se importará cuando primero se inicia IntelliJ en lugar del archivo pom.xml para el proyecto.

Cerrando el proyecto problemático y luego siguiendo el proceso de importación nuevamente, pero al elegir el pom.xml un proyecto completamente funcional en el IDE.


Esto también me sucedió después de actualizar Intellij a 1.4.15. Traté de volver a importar todo el proyecto con el mismo resultado, pero habilitar Maven Auto Import hizo los trucos.


Me encontré con problemas similares. Para mí terminó siendo que estaba importando el proyecto incorrectamente. he estado haciendo

import project
    <navigate to existing project and click top level directory>
    follow the wizard

Lo que resolvió mis problemas de experto fue hacer

import project
    <navigate to existing project and click the pom.xml
    follow the wizard


Parece que hay varias razones válidas por las cuales intelliJ ignoraría un archivo pom. Ninguna de las respuestas anteriores funcionó en mi caso, así que esto es lo que funcionó, en caso de que alguien más se encuentre con este problema:

En este ejemplo, IntelliJ ignoró por completo el módulo3. El pom.xml en ese directorio ni siquiera se estaba tratando como un maven pom.

Mi estructura de proyecto es así:

myProject
    module1
    module2
    module3

PERO, mi estructura de pom (simplificada) es así:

<project>
    <modelVersion>4.0.0</modelVersion>
    <groupId>devs</groupId>
    <artifactId>myProject</artifactId>
    <version>0.0-SNAPSHOT</version>
    <packaging>pom</packaging>
    <name>myProject</name>

    <modules>
        <module>module1</module>
        <module>module2</module>
    <modules>

    <profiles>
        <profile>
            <id>CompleteBuildProfile</id>
            <modules>
                <module>module3</module>
            </modules>
        </profile>
    </profiles>
</project>

Para solucionar esto, modifiqué el elemento raíz <modules> para agregarlo en el módulo3 temporalmente.

    <modules>
        <module>module1</module>
        <module>module2</module>
        <module>module3</module>
    <modules>

A continuación, vuelva a importar la raíz pom e IntelliJ agregará el módulo. Cuando eso esté hecho, invierta el pom. IntelliJ le preguntará si también desea eliminar el module3 de la estructura del proyecto. Haga clic en No

Bam! Hecho. Module3 funciona y puedo ejecutar mis pruebas de integración de IntelliJ nuevamente: D



Una simple reimportación y / o actualización de los repositorios a través de Intellij no me sirvió.

En cambio, tuve que eliminar el directorio ~/.m2/repository completo y dejar que ~/.m2/repository todo por sí mismo. Luego Maven -> Reimport terminó.


Vaya a Archivo> Configuración> Construcción, Ejecución, Despliegue> Herramientas de compilación> Maven y consulte el directorio de inicio de Maven. Esta debería ser la misma instalación de maven utilizada para la línea de comando





intellij-idea