IntelliJ con compilation Maven


9

Ho un progetto che ha bisogno di barattoli Hibernate.

Li ho aggiunti come dipendenze nel pom.xml e Maven compila bene il mio progetto.

Tuttavia, nell'IDE, tutte le annotazioni e le chiamate all'API Hibernate sono contrassegnate come non risolte (rosso).

Come ho potuto fare in modo che IntelliJ fosse in grado di risolverli?

C'è un modo per usare Maven quando faccio clic su Build Project? (Ctrl + F9)

Inoltre, sono confuso con il concetto di sfaccettature all'interno di IntelliJ. Ne ho bisogno, diciamo le sfaccettature dell'APP per abilitare l'assistente alla persistenza, ecc ... o c'è un'opzione per cui Maven si prende cura?


1
Eliminare il progetto da IntelliJ e reimportarlo sarebbe utile?

@ Thorbjørn Ravn Andersen L'ho fatto, la stessa cosa non funziona.
Mik378,

Per essere più preciso, uso un ServletContextListener quindi ho bisogno di servlet-api.jar. Maven ha aggiunto bene, ma Intellij si lamenta della classe irrisolta. Potrei aggiungerlo con il pannello delle impostazioni di IDE come dipendenza, ma nel farlo non
troverei

2
Le classi necessarie per la compilazione ma che sono fornite dal contenitore Web devono essere menzionate con<scope>provided</scope>

1
Infine, rimuovo completamente (dal disco anche ^^) i miei progetti e lo ricreai. E Abracadabra, Maven funziona :) Grazie per l'aiuto !! :)
Mik378,

Risposte:


8

Cancella la cache o reimporta

A volte Intellij si intromette con i progetti. Quando ciò accade, l'approccio generale è il seguente:

  1. Prova a costruire | Ricostruisci progetto
  2. In caso contrario, verificare che il progetto verrà compilato dalla riga di comando
  3. In caso affermativo, utilizzare File | Cache non valide seguite da Build | Ricostruisci tutto
  4. In caso contrario, eliminare i file di progetto locali ed estrarli nuovamente dal controllo di versione utilizzando pom.xml come file di progetto
  5. In caso contrario, si è verificato un grave problema con l'installazione di Intellij

stackoverflow.com/a/11467266/32453 elenca anche alcuni passaggi ancora più aggressivi.
rogerdpack,
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.