web-dev-qa-db-de.com

Bereitstellen eines Projekts, das mit Eclipse und Maven erstellt wurde, für Tomcat

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.

9
user348267

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 .

6
pkainulainen

Dies kann auf zwei Arten erfolgen.

  1. Siehe URL

    http://www.mkyong.com/maven/how-to-create-a-web-application-project-with-maven/

  2. Erstellen Sie ein Maven-Projekt mit Eclipse und suchen Sie den Projektordner über den Befehl Eingabeaufforderung (oder) Terminal

  3. mvn Eclipse: Eclipse -Dwtpversion = 2.0 [im Projektordner]

From Terminal locate your webproject

  1. Refersh Eclipse-Projekt.

  2. Jetzt können Sie die Bereitstellung hinzufügen und entfernen.

Eclipse ScreenPrint

5
Parthasarathy B

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.

4
LaRa

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).

3
Pascal Thivent

Wenn Sie möchten, dass Ihre mit war erstellte maven-Datei direkt auf dem Tomcat-Server bereitgestellt wird, kann Ihnen diese Tomcat-Implementierungskonfiguration helfen.

0
Sai prateek