Ich benutze Eclipse 3.5, Maven 2, m2Eclipse und Tomcat 6. Also erstelle ich ein Maven-Projekt für den Archetyp Webapp. Dies ist pom.xml:
<project xmlns="http://maven.Apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.Apache.org/POM/4.0.0 http://maven.Apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.itransition</groupId>
<artifactId>hello</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>hello Maven Webapp</name>
<url>http://maven.Apache.org</url>
<!-- tools.jar dependency -->
<profiles>
<profile>
<id>default-tools.jar</id>
<activation>
<property>
<name>Java.vendor</name>
<value>Sun Microsystems Inc.</value>
</property>
</activation>
<dependencies>
<dependency>
<groupId>com.Sun</groupId>
<artifactId>tools</artifactId>
<version>1.5.0</version>
<scope>system</scope>
<systemPath>${Java.home}/../lib/tools.jar</systemPath>
</dependency>
</dependencies>
</profile>
</profiles>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.Apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.1.8.1</version>
</dependency>
</dependencies>
<build>
<finalName>hello</finalName>
</build>
</project>
Dann möchte ich meine Webanwendung für Tomcat bereitstellen. Was ich tun muss? Maven installieren nicht helfen. Wenn ich jedoch Krieg durch die Installation von Maven erstellt habe, kann ich es in Eclipse importieren und über "Hinzufügen und Entfernen ..." im Server-Popup für Tomcat bereitstellen.
Dieses Problem kann mithilfe des Tomcat-Plugins für Maven behoben werden. Die Homepage verfügt über eine umfangreiche Dokumentation bezüglich der Konfiguration des Plugins und der Bereitstellung von Kriegsdateien .
Dies kann auf zwei Arten erfolgen.
Siehe URL
http://www.mkyong.com/maven/how-to-create-a-web-application-project-with-maven/
Erstellen Sie ein Maven-Projekt mit Eclipse und suchen Sie den Projektordner über den Befehl Eingabeaufforderung (oder) Terminal
mvn Eclipse: Eclipse -Dwtpversion = 2.0 [im Projektordner]
Refersh Eclipse-Projekt.
Jetzt können Sie die Bereitstellung hinzufügen und entfernen.
Es wurde festgestellt, dass die Tomcat-Manager-URL (ich verwende Tomcat 6.0) http://localhost:8080/manager/html
ist, während der vom mvn Tomcat-Plugin verwendete Standard beim Manager in der URL stoppt. Fügen Sie die angegebene URL zu Ihrer pom.xml als Konfigurationsparameter hinzu (siehe diese URL für weitere Informationen http://mojo.codehaus.org/Tomcat-maven-plugin/configuration.html ) und voilà, es funktioniert. ..
Bei Tomcat7 habe ich festgestellt, dass ich die URL als http://localhost:8080/manager/html
einrichten muss und einen Benutzernamen mit einer Manager-GUI-Rolle verwenden muss. Die Verwendung eines Benutzernamens mit der Managerskriptrolle und der URL http://localhost:8080/manager/text
funktioniert jedoch ebenfalls und ist geeigneter. Die Manager-Skript-Rolle ist der entworfene Weg für Ant/Maven-Skripts.
Dann möchte ich meine Webanwendung für Tomcat bereitstellen. Was ich tun muss? Maven installieren nicht helfen. Wenn ich jedoch Krieg durch die Installation von Maven erstellt habe, kann ich es in Eclipse importieren und über "Hinzufügen und Entfernen ..." im Server-Popup für Tomcat bereitstellen.
Da Sie m2Eclipse verwenden, würde ich empfehlen, Ihre Anwendung mithilfe des WTP bereitzustellen. Angenommen, Sie haben die Funktion Maven-Integration für WTP installiert (von m2Eclipse extras ) und Tomcat als Server konfiguriert. Klicken Sie mit Rechtsklick in Ihrem Projekt und wählen Sie Run > Auf Server ausführen ...
Eine andere Option wäre, Ihre Anwendung auf Jetty auszuführen (ja, ich weiß, dass Sie dies nicht verlangen, aber diese Option ist sehr gültig, wenn Sie das WTP nicht verwenden möchten). Fügen Sie Ihrem Pom das folgende Snippet hinzu:
<project>
...
<build>
...
<plugins>
...
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>6.1.10</version>
</plugin>
</plugins>
</build>
</project>
Führen Sie einfach mvn jetty:run
aus, um einen eingebetteten Jetty-Server zu starten und Ihre Anwendung darauf bereitzustellen.
Dasselbe kann für Tomcat mit dem Tomcat Maven Plugin erreicht werden. Wenn Sie jedoch keine Bereitstellung auf einem Remote-Tomcat durchführen möchten (siehe Seite Usage ), sehe ich keinen Vorteil gegenüber dem Maven Jetty Plugin .
Während der Entwicklung würde ich die erste Option verwenden (Bereitstellung mit WTP).
Wenn Sie möchten, dass Ihre mit war
erstellte maven
-Datei direkt auf dem Tomcat-Server bereitgestellt wird, kann Ihnen diese Tomcat-Implementierungskonfiguration helfen.