2011-01-13 7 views
3

Ich habe ein mavenized Projekt mit Abhängigkeiten von 4 anderen mavenized Projekten, an denen mein Team gerade arbeitet. Wir haben "Arbeitsbereich Auflösung" aktiviert.Maven Arbeitsbereich Auflösung fehlende Gläser für lokale Tomcat-Tests

Wenn ich in Tomcat veröffentliche, sind Gläser für die 4 Projekte nicht verfügbar, also sehe ich alle Arten von NoClassDefFoundError Ausnahmen. Ich sehe keine Probleme mit JUnit Tests oder Verpackung. (Ich führe das Paket Ziel und die resultierende Krieg-Datei enthält die SNAPSHOT Gläser, die ich erwarte.)

Ich sehe eine Menge Leute befürworten für die Verwendung von Arbeitsbereich Auflösung, aber wenn wir in Tomcat testen müssen, sollten wir dies deaktivieren? Oder was könnte ich noch vermissen?

Wir verwenden Eclipse Helios, das m2eclipse-Plugin, Maven 3.0.3. Ich habe sogar m2extras installiert, um zu sehen, ob das geholfen hat, aber ich habe keinen Unterschied gesehen.

Dank

+0

Als Unternehmen haben wir beschlossen, Workspace Resolution zu deaktivieren. –

Antwort

0

Sie kann dieses Setup bekommen (wir mit der gleichen Werkzeugkette und das Setup hier gearbeitet haben) zu arbeiten, wenn Sie mit einigen manuellen Auffrischungen leben können, nachdem Sie m2eclipse Ziele mit bauen haben.

Das Problem ist, dass nicht alle externen Änderungen über m2eclipse-Builds zu Workspace-Projekten korrekt mit der in Tomcat bereitgestellten Webanwendung synchronisiert werden.

Also, wenn Sie NoClassDefFoundError Ausnahmen nach dem Aufbau über m2eclipse erleben sollte die folgende helfen (nicht alle sind notwendig, jedes Mal):

  • ein Projekt Do/Reinigen auf Maven Projekte
  • ein Aktualisieren Sie (F5) auf Ihrem maven Projekte
  • reinigen sie die eingesetzte Web-Anwendung (Server Kontextmenü)

Ja, es ist mühsam, aber man kann damit leben.

+0

Die obige Lösung funktioniert nicht für uns. – Stephen

0
  1. Entfernen Sie das Abhängigkeitsprojekt aus dem Arbeitsbereich.
  2. Löschen Sie .settings-Verzeichnis und .project-Dateien.
  3. Importieren Sie das Projekt erneut.
  4. Aktualisieren Sie die Abhängigkeiten von Maven in allen Projekten.
Verwandte Themen