L'idea di Intellij non può risolvere nulla in Maven


130

Sono nuovo di Intellij Idea, ho appena importato un progetto con pom.xml, ma l'ide non ha risolto nulla nelle dipendenze di Maven.

Qualsiasi cosa definita nelle pom.xmldipendenze quando l'importazione nel codice genera un errorecannot resolve symbol xxxxx

Ma mvn installfunziona, provo importare le dipendenze in Project Settings/Librariesnel .jarfile, allora funziona, ma potrebbe biblioteche Resolve IDE definito pom.xml? non voglio farlo ogni volta.

Informazioni aggiuntive:

Versione IDEA: 12.0.3, SO: windows 7, reimport non funziona, versione maven: 3.0.4, le dipendenze maven non esistono nelle librerie Exernal.

non ci sono eccezioni in idea.log ...


Versione IDEA? Qualche eccezione correlata in idea.log ? Versione Maven? Quale sistema operativo usi? Il pulsante Reimport funziona nella Maven Projectsfinestra degli strumenti? Vedi le dipendenze sotto il External Librariesnodo nel Project View?
CrazyCoder

Versione IDEA: 12.0.3, sistema operativo: Windows 7, reimport non funziona, versione maven: 3.0.4, le dipendenze maven non esistono nelle librerie Exernal.
Scoppiò il

non ci sono eccezioni in idea.log ...
Burst

Prova IDEA 12.1 , abilita Maven 3 in Settings| Maven| Importing, anche la configurazione di rete può influire su di essa .
CrazyCoder

grazie per la tua risposta, funziona ora, ma c'è ancora un problema: le dipendenze quale scope = system non verranno implementate quando eseguite in tomcat.
Scoppio il

Risposte:


118

In IntelliJ 12.1.4 ho esaminato Settings --> Maven --> Importinge verificato che fosse selezionato quanto segue:

  1. Importa automaticamente i progetti Maven
  2. Creare moduli IDEA per progetti aggregatori
  3. Mantieni la fonte ...
  4. Escludi dir build ...
  5. Usa uscita Maven ...
  6. Cartelle Souces generate: "rileva automaticamente"
  7. Fase da essere ...: "processo-risorse"
  8. Scarica automaticamente: "fonti" e "documentazione"
  9. Usa Maven3 per importare il progetto
    • Opzioni VM per importatore: -Xmx512m

Ciò mi ha portato dall'avere molte dichiarazioni di importazione non risolte alla risoluzione di tutto. Penso che la chiave qui sia stata usare Maven3 per importare il progetto ... Speriamo che questo aiuti.


15
Questo va bene, ma ho anche dovuto caricare il progetto come progetto Maven - scegli File | Apri il tuo pom.xml e attendi.
MaKri,

3
Sia questa risposta che il primo commento hanno risolto il mio problema. Grazie ragazzi!
miken.mkndev,

Avevo bisogno di aumentare ulteriormente la memoria per l'importatore e alla fine ho optato per -Xmx4096m (è un grande progetto). Questo è diverso dalle impostazioni di memoria in idea.vmoptions!
Yasammez,

Grazie, ho avuto un problema a causa del quale Maven 3.0.5 (in bundle) non avrebbe importato dipendenze maven, ma l'aggiornamento per l'uso 3.3.9 ha permesso a tutte le dipendenze di importare correttamente.
Matthew Buckett,

Non sono sicuro del motivo per cui IDEA non abbia un menu di scelta rapida simile a Eclipse per creare progetti basati su Maven. Con la versione 2017.2 è necessario eseguire File> Altre impostazioni> Impostazioni predefinite> cerca maven nel campo di ricerca. IDEA ha una UX davvero negativa rispetto a Eclipse
vikramvi il

116

Ho riscontrato questo problema , l'idea non è possibile scaricare tutti i pacchetti jar dipendenti utilizzando Maven, ho appena provato le seguenti operazioni:

 mvn -U idea:idea

quindi tutti i pacchetti jar dipendenti vengono scaricati dal repository maven


4
Nota: questo plugin è stato ritirato. Non è più mantenuto. maven.apache.org/plugins/maven-idea-plugin
petertc

6
È l'unica soluzione di questa pagina che funziona anche per me !!
nahab,

Ho affrontato questo problema da molto tempo .. e questo mi ha salvato la giornata (/ giorni) ... Grazie mille !!
codeMan,

È utile per me Grazie.
Anna Kaygorodova,

3
Qualcuno può spiegare perché questo funziona? Questa è stata l'unica buona soluzione per me, nonostante il plug-in ritirato, a dicembre 2017.
Z3d4s,

34

Inoltre ho riscontrato questo errore perché il progetto ha importato le cartelle principale e di test come moduli. Fai clic su Progetto -> Premi F4 -> Nelle impostazioni del modulo, rimuovi le cartelle principali e di prova e crea nuovamente il progetto. Il problema sarà risolto.


1
Questo si è rivelato anche il mio problema dopo aver importato un progetto Maven esistente in IntelliJ 14.0.3 e aver selezionato tutte le opzioni predefinite durante il processo di importazione.
Nate R.,

Dopo ore di ricerche, questo ha funzionato per me. BlessUp!
SourceVisor,

Questo ha funzionato anche per me! Qualcuno sa perché questo rompe la risoluzione?
dmi_11

Questo ha funzionato per me, questo è il più semplice che ho provato .. Grazie!
rrw

1
+1 ... questo ha fatto totalmente il trucco per me. Sembrava che tutto fosse impostato correttamente, che era stato letto pom.xml, erano presenti le librerie, ma era necessario farlo per far scomparire gli errori.
Davesbrain,

34

Ho riscontrato questo problema durante l'utilizzo dell'istanza Maven 3 in bundle di IntelliJ 14.

Sono passato all'utilizzo della mia istanza Maven locale tramite:

Settings -> Build, Execution, Deployment -> Build Tools -> Maven -> Maven Home Directory

Quindi aggiunto il percorso alla mia istanza installata localmente.inserisci qui la descrizione dell'immagine

Ciò ha fatto apparire magicamente le dipendenze.

inserisci qui la descrizione dell'immagine


1
Incredibile. Questo ha funzionato per me, dopo un sacco di mal di testa. Ho scaricato Maven 3.5 da Internet. Molte grazie !!
sumanth232,

mi ha salvato la giornata !! Grazie Conor
Dota2,

Wow, sembrava che qualcosa si fosse staccato dall'idea dopo aver fatto questo trucco. Grazie Connor.
Bnrdo,

Accidenti, non avrei mai pensato di non dover usare la versione in bundle di Maven e usare la mia. Ha funzionato totalmente dopo aver trascorso un paio d'ore a provare tutti i tipi di cose.
Zen,

Super !! Funzionava come un gioco da ragazzi. Grazie mille per l'aiuto.
Sanjeev,

10

Ho provato diverse opzioni, ma questa alla fine ha risolto il mio problema. Ho reimportato il progetto seguendo questi passaggi in IntelliJ:

  1. File -> Nuovo -> Progetto da repository esistenti
  2. Scegli il tuo progetto da "Seleziona file o directory da importare"

  3. Nella schermata successiva selezionare "Importa progetto da modello esterno", quindi selezionare "Maven.

  4. Nel passaggio successivo, fai clic sulla casella di controllo " Importa progetti Maven automaticamente ", (che ha risolto il mio problema)
  5. Termina scegliendo i profili se necessario

Per me la reimportazione di progetti Maven non ha risolto il problema di progetti esistenti.


5

Per me il problema è che cosa ho dovuto selezionare la casella "Importa progetti Maven automaticamente" in Impostazioni> Maven> Importazione


Grazie! È ancora una soluzione aggiornata per Intellij IDEA 2016. L'importazione di Maven ha permesso di aprire il progetto maven esistente senza soluzione di continuità a differenza dell'apertura di un progetto che ha causato molteplici problemi di dipendenza!
Sterminatore: 13

5

Ho appena riscontrato lo stesso problema dopo l'aggiornamento di IntelliJ. La mia correzione: fare clic con il tasto destro sul progetto, quindi fare -> reimportare.


5
  1. Chiudi IntelliJ
  2. Apri lo stesso progetto
  3. Quando il progetto viene caricato, in basso a destra puoi vedere un pop-up che dice non-managed pom.xml file found, se fai clic su di esso verrà un nuovo pop-up, dicendo add as maven project, fai clic su di esso e fatto.

4

Stavo ricevendo questo errore perché il mio progetto non era stato impostato correttamente. Aveva importato cartelle principali e di test come moduli. Quando ho eliminato i 2 moduli (ma li ho conservati come cartelle di origine e test), il mio codice ha iniziato a compilare correttamente.


4

Ho avuto lo stesso problema dell'autore!

Per risolvere il mio problema ho dovuto aggiungere Maven Integration Plugin: File | Impostazioni | plugin

Come questo:

Maven Integration Plugin

Successivamente Intellij ha scaricato tutte le dipendenze dal file pom.xml.

Ora, se voglio creare un progetto basato sul modello maven, scelgo semplicemente Apri nella prima finestra di Intellij e scelgo il file pom.xml:

inserisci qui la descrizione dell'immagine


Questo ha fatto il trucco per me. Per qualche ragione avevo solo provato a importare il progetto (un grande progetto Maven con molti sottomoduli).
Torbjørn Kristoffersen,

2

Se hai importato il tuo progetto maven in IntelliJ e ci sono errori a causa della mancata risoluzione delle importazioni maven a causa delle impostazioni personalizzate di maven che potresti utilizzare. Ho provato a sovrascriverlo nelle impostazioni predefinite di Intellij maven non ha aiutato. Alla fine ho dovuto tenerlo in ~ / .m2 / settings.xml e poi IntelliJ l'ha finalmente onorato.


Questa è l'impostazione predefinita, sì?
rogerdpack

2

Avevo il file settings.xml vuoto in Users /.../. M2 / settings.xml. Quando ho aggiunto

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      https://maven.apache.org/xsd/settings-1.0.0.xsd">

</settings>

tutte le dipendenze sono state caricate


1

In Impostazioni -> Maven -> Archivi solo alcuni archivi configurati nelle mie impostazioni visualizzate.

Soluzione

Probabilmente è un bug (Idea 13.1.5 Ultimate). Mi ha aiutato a cambiare gli specchi. Quello che non si stava mostrando in alto.


1

Con intelliJ 16.1.4 ho avuto lo stesso problema. Dovresti dare un'occhiata al registro degli eventi, perché mi diceva "Trovato file pom.xml non gestito: ..." Ho fatto clic su di esso e il problema è stato risolto.


1

Nel mio caso, ho ampliato il pannello dei progetti maven sul lato destro, ho fatto clic su + e aggiunto il progetto. Quindi ha funzionato.


1

Se hai delle dipendenze in pom.xml specifiche della tua organizzazione, devi aggiornare il percorso di setting.xml per il tuo progetto che è impostato di default sulla tua directory utente in Ubuntu: /home/user/.m2/settings.xml - > (modificalo nel tuo percorso conf apache-maven)

Aggiorna il file Setting.xml Intellij


0

3 semplici passaggi: IntelliJ 14:

  1. File> impostazioni> Creazione, esecuzione, distribuzione> Strumenti di creazione

  2. Seleziona Maven

  3. Home directory Maven: C: / Programmi / apache-maven-3.3.3 (la tua posizione equivalente)


0

Tieni presente che IntelliJ aggiunge le classi della tua installazione Maven locale al proprio percorso di classe , quindi tienilo aggiornato.

Nel mio caso IntelliJ ha provato a chiamare il metodo org.eclipse.aether.util.ConfigUtils.getFloat(). Ciò ha causato un java.lang.NoSuchMethodError, perché la mia versione Maven di anni non conteneva ancora questo metodo. A causa dell'eccezione, IntelliJ ha smesso di risolvere le dipendenze.

Dopo aver aggiornato Maven, è necessario modificare l'impostazione "Directory home Maven" in "Build, Execution, Deployment" -> "Maven". Successivamente è necessario riavviare IntelliJ, poiché il percorso di classe della JVM di IntelliJ non cambierà durante l'esecuzione.

Mi ci è voluto del tempo per risolvere questo problema, poiché non mi aspettavo che IntelliJ usasse le classi della mia installazione locale di Maven. Ho pensato che utilizza i propri JAR in bundle. Quindi speriamo che queste informazioni siano utili per gli altri.


0

<option name="workOffline" value="true" />in workspace.xmlnon è tuo amico. Consiglia di controllare questo prima di eliminare il tuo .idea(che ha molte impostazioni utili che probabilmente non vuoi perdere)

È workspace.xmlun'ambientazione da forno


0

Mi sembra che le soluzioni a questo problema siano molte e tutte sembrano un po 'magiche. Per me, l'annullamento della cache, la reimportazione o qualsiasi altra cosa già menzionata non funzionava. L'unica cosa che ha aiutato è stata (senza reimportazione) andare alle impostazioni di Maven, deselezionare l'importazione automatica e ricontrollare.

inserisci qui la descrizione dell'immagine


0

c'è un problema con la versione in bundle Maven. come qualcuno ha suggerito in precedenza, sono passato alla mia installazione di Maven e le dipendenze hanno funzionato magicamente (IntelliJ 2018.3)


0

Ho appena avuto questo problema durante l'aggiunta di <dependency>...</dependency>elementi a <profile>. Ho appena scoperto che se aggiungo (inserisco) gli elementi di dipendenza non risolti <dependencies>all'elemento, le dipendenze vengono scaricate dal repository di Maven; Posso quindi rimuovere l'elemento di dipendenza dall'elemento di dipendenze.


0

L'uso di maven predefinito (fornito con IntelliJ) potrebbe anche creare questo problema. Quindi configura il Maven che hai installato.

Questo può essere fatto da: File -> Impostazioni -> Build, Execution, Deployment -> Maven

Aggiorna le seguenti impostazioni in base all'installazione di Maven:

  1. Maven home directory =
  2. File delle impostazioni dell'utente =
  3. Repository locale =

0

Ok, ho dovuto affrontare questo problema per giorni. Stavo cercando di importare la libreria POI e la libreria JSON semplice, ho provato tutte le risposte proposte e la soluzione non ha funzionato. Alla fine la soluzione per il mio caso era abbastanza semplice

Ho solo bisogno di aggiungere quanto segue al mio file module-info.java dopo aver inserito le dipendenze nel mio file POM:

 requires poi.ooxml;
 requires poi;
 requires json.simple;

quindi penso che, poiché il mio progetto era contenuto in un pacchetto in un modulo, dovevo farlo per far sapere al sistema che verranno utilizzate queste librerie importate. così semplice inserire il nome della libreria dopo aver richiesto nel file module-info.java

Spero che funzioni per te


0

vai su Librerie esterne e rimuovile tutte le librerie che dicono root dopo aver fatto clic su reimporta tutto il progetto

inserisci qui la descrizione dell'immagine

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.