2009-03-21 3 views
13

Hier ist ein Beispiel-Profil in meinem POM:Wie kann ich eine Maven-Webanwendung in Eclipse ausführen, wenn ich zum Erstellen von Eigenschaften Profildateien verwende, um diese zu füllen?

<profiles> 
    <profile> 
     <id>QA</id> 
     <activation> 
      <activeByDefault>true</activeByDefault> 
     </activation> 
     <properties> 
      <jdbc.url>jdbc:mysql://127.0.0.1:3306/SomeDB</jdbc.url> 
      <jdbc.username>webapp</jdbc.username> 
      <jdbc.password>somepassword</jdbc.password> 
     </properties> 
    </profile> 
    ... 

Ich habe dann eine Eigenschaft in meinen Ressourcen Ordnern wie diese Datei:

jdbc.url = ${jdbc.url} 
jdbc.username = ${jdbc.username} 
jdbc.password = ${jdbc.password} 

und schließlich drehe ich in meinem POM Filterung auf:

<build> 
    <resources> 
     <resource> 
      <directory>src/main/resources</directory> 
      <filtering>true</filtering> 
     </resource> 
    </resources> 
    ... 

Dies ist eigentlich ein vereinfachtes Beispiel, aber Sie bekommen die Idee. Im Grunde genommen, wenn ich

laufen mvn install -P QA

Maven wird meine app.properties Datei filtern, ersetzen Sie alle Platzhalter mit den Werten im Profil gehalten und implementieren die bevölkerten Properties-Datei.

Das Problem mit all diesen ist, dass ich gerne den Server-Mechanismus in Eclipse verwenden, wo ich Tomcat innerhalb der IDE ausgeführt habe. Meine Projekte werden in diesem Fall ausgeführt, und Eclipse kümmert sich um die Aktualisierung, Neuverteilung usw. Maven bleibt jedoch während der Bereitstellung in der IDE aus dem Bild und diese Eigenschaftendatei wird nie korrekt ausgefüllt.

Also, wie kann ich mein Projekt innerhalb der IDE weiter ausführen, aber diese Eigenschaftendatei korrekt ausgefüllt?

Antwort

2

Danke Alex. Ich beendete die Installation Eclipse Integration for Apache Maven (Eclipse IAM), formerly Q for Eclipse

Dieses Plugin löste zwei Probleme: Popup-Eigenschaftendateien während Publish to Server-Ereignisse in Eclipse und den WEB-INF/lib-Ordner zu füllen. Vorher, obwohl ich mvn eclipse: eclipse ausgeführt habe, um meinen Build-Pfad in Eclipse zu erfüllen, wurden diese Abhängigkeiten nicht korrekt auf den eingebetteten Servern veröffentlicht. Dieses Plugin macht das. Nachdem ich diese beiden Probleme gelöst habe, sehe ich keine Hindernisse mehr für die Entwicklung eines Maven-Projekts in Eclipse, das die eingebetteten Server nutzt.

3

Sie können jeden Maven-Befehl (einschließlich solcher mit Profilen) effektiv über das -Plugin ausführen. Außerdem arbeitet m2eclipse mit WTP (von dem ich glaube, dass es sich um den Server-Tab handelt). Ich bin nicht sicher in diesem Teil, aber ich habe es verwendet, um Web-Anwendungen in Tomcat in Eclipse für ein Maven-Projekt bereitzustellen.

Verwandte Themen