2010-06-18 9 views
11

Ich arbeite derzeit an einem Java EE-Projekt. Ich habe erfolgreich einen Web-Service entwickelt und unter dem eingebauten Apache-Server von Eclipse zu Testzwecken bereitgestellt.Eclipse WTP veröffentlicht keine Projektabhängigkeiten in WebContent

Ich habe jetzt mein Projekt in 2 Projekte aufgeteilt: Ein Master und eine Abhängigkeit (sagen wir "Utils"). Bei der Entwicklung beklagt sich eclipse nicht über Kompilierungsprobleme, da ich das "Utils" -Projekt als eine Abhängigkeit in meinem "build path" Setup hinzugefügt habe.

Wenn Tomcat (als eingebetteter Server) gestartet wird, beschwert es sich jedoch, die Klassen des "Utils" -Projekts nicht zu finden.

Ich habe erwartet, dass Eclipse die "Utils/bin" in WebContent/WEB-INF/Klassen kopiert, aber das tut es nicht. Wie automatisiere ich das? So dass "Utils/bin" bei jeder Änderung im WebFolder bereitgestellt wird?

FYI, ich benutze Maven noch nicht (aber ich plane).

Vielen Dank im Voraus für Ihre Hilfe, Mit freundlichen Grüßen

Raphael

Antwort

5

Sie können dies tun, indem Sie das Utils Projekt als Modul zu Ihrem ‚Master‘ Projekt hinzufügen. Ich nehme an, das Master-Projekt ist eine Web- oder Ear-Anwendung. Klicken Sie mit der rechten Maustaste auf das Projekt -> Eigenschaften -> Java EE-Modul Abhängigkeiten. Fügen Sie das Utils-Projekt dazu hinzu. Eclipse wird das Utils-Projekt in die Bereitstellung einschließen.

+0

Es funktioniert. Danke. –

+0

+1 hat mir geholfen, das Problem mit meinem Webprojekt zu lösen – chrisbunney

+0

Es gibt keine solche Option im Falle meines dynamischen Webmoduls ... – snorbi

14

Ross' answer brachte mich auf den richtigen Weg, aber in Eclipse Helios konnte ich das Java EE Module in meinem dynamischen Webprojekt nicht finden.

Stattdessen fand ich die Möglichkeit, Abhängigkeiten hinzuzufügen, so dass sie in den richtigen Speicherort integriert sind, war unter dem Projekt Eigenschaften -> Deployment Assembly, und von dort konnte ich Archive über Pfadvariable hinzufügen, aus dem Dateisystem oder aus dem Arbeitsbereich sowie aus einem Ordner, einem Buildpfadeintrag oder einem anderen Projekt.

+0

+1 Ich kann das nicht glauben. Ich habe 3-4 Stunden mit dem Debuggen verbracht und es stellte sich heraus, dass auf der Deployment-Assembly-Seite etwas kaputt gegangen ist. Ich habe meine Abhängigkeit gelöscht und wieder hinzugefügt, und die Dinge funktionieren wieder. – ashes999

+0

Ich habe tatsächlich die letzten paar Jahre (!) Gedacht, die einzige Möglichkeit, ein anderes Projekt als Abhängigkeit zu meiner Webanwendung hinzuzufügen, war, die .JAR-Datei manuell in WEB-INF/lib-Ordner zu exportieren oder Maven oder etwas Ähnliches zu verwenden (was ich nicht kenne). Mein Leben hat sich geändert, danke! – gromit190

Verwandte Themen