2012-04-03 5 views
19

habe ich die unten depdencies in meinem pomMaven Abhängigkeiten von Eclipse

 <dependency> 
     <artifactId>richfaces-api</artifactId> 
     <groupId>org.richfaces.framework</groupId> 
     <version>3.3.3.Final</version> 
    </dependency> 

     <dependency> 
     <groupId>org.richfaces.ui</groupId> 
     <artifactId>richfaces-ui</artifactId> 
     <version>3.3.3.Final</version> 
    </dependency> 

    <dependency> 
     <artifactId>richfaces-impl</artifactId> 
     <groupId>org.richfaces.framework</groupId> 
     <version>3.3.3.Final</version> 
    </dependency> 

Wenn ich habe mvn sauber in Eingabeaufforderung installieren, wurde diese Abhängigkeit Gläser heruntergeladen. In Eclipse wird dies jedoch nicht im Abschnitt referenzierte Bibliotheken angezeigt. Die anderen JAR-Dateien, die Teil von Abhängigkeiten sind, werden jedoch angezeigt. Gibt es etwas, was ich tun muss, damit dies reflektiert wird? Vielen Dank.

+0

Vielleicht möchten Sie das Projekt/Maven-Plugin (wenn Sie es benutzen) einen Klassenpfad-Container erstellen. – Puneet

+1

Manchmal habe ich das gleiche Problem, ich starte die IDE einfach neu und die neuen Bibliotheken kommen etwas später an. – anvarik

+0

Welche Version von Eclipse benutzt du und verwendest du m2e oder maven-eclipse-plugin? Wenn Sie m2e verwenden, klicken Sie einfach mit der rechten Maustaste auf Ihr Projekt -> Maven -> Abhängigkeiten aktualisieren ...sollte den Trick machen (und es sogar die Gläser für Sie herunterlädt) –

Antwort

41

Dies hängt davon ab, wie Sie integriert haben Maven in Eclipse:

  • keine Eclipse-Integration: mvn eclipse:eclipse auf der Kommandozeile ausführen, um die Projektdefinition zu aktualisieren.
  • m2eclipse oder M2e: die POM-Datei aktualisieren (wählen, drücken F5), dann mit der rechten Maustaste auf das Projekt, Maven> Update Abhängigkeiten

Dies sollte es beheben.

+8

Es war Maven> Update Project ... auf meiner Version von m2e aber ja, das hat es behoben! Vielen Dank! In meinem Fall wurden die JAR-Dateien heruntergeladen und im Verzeichnis lib angezeigt, aber nicht in der Liste der Abhängigkeiten in der Deployment-Assembly. – crowmagnumb

+1

fyi .. für Leute, die Option 2 von dieser Antwort betrachten. Check http://stackoverflow.com/questions/9665569/where-did-eclipsses-run-as-maven-package-go – mtk

+4

Ich benutze Eclipse Mars, In dieser neuen Version von Eclipse müssen Sie mit der rechten Maustaste auf das Projekt klicken , Maven> Projekt aktualisieren. –

4

gibt es zwei Dinge, die Sie tun können: a) verwenden, um ein Plugin wie m2eclipse b) nennen mvn eclipse:eclipse

Die erste approch wird Eclipse Arbeit mit Maven machen. Der zweite erstellt eine .project und eine .classpath Datei. Sie müssen mvn eclipse:eclipse jedes Mal aufrufen, wenn Sie die Maven-Abhängigkeiten ändern.

Aus meiner Sicht ist der zweite Ansatz besser, weil ich mit m2eclipse und Multimodul-Projekten in ernsthafte Schwierigkeiten geraten bin.

Update:

Soweit ich Kompatibilität definieren, Eclipse ist nicht Maven kompatibel, weil es nicht die verschiedenen classpathes von Maven nicht trennen. Andere IDE sind besser (in diesem Aspekt).

3

Direkt am Projekt klicken ->

Eigenschaften -> Deployment Assembly -> Add -> Java Build Path-Einträge ->

Maven deps wählen -> finish -> klicken Sie auf OK

oder einfach unter Befehl ausführen und maven eclipse-Dateien

mvn eclipse:eclipse 
0

Eine andere Möglichkeit, die ich heute darüber stolpert erzeugen lassen, ist, wenn Sie versehentlich compile:compile t eingestellt o ignorieren - ich habe keine Ahnung, wie ich es tat, aber es gehen zu reparieren zu Window-> Einstellungen-> Maven-> Life Cycle Mappings, öffnen Sie die Datei, um es Punkte und entfernen Sie alle Elemente, die pluginExecution

<action> 
    <ignore /> 
    </action> 
sagen