web-dev-qa-db-fra.com

Projet de déploiement, créé avec Eclipse et Maven, sur Tomcat

J'utilise Eclipse 3.5, Maven 2, m2Eclipse et Tomcat 6. Je crée donc un projet Maven pour archetype webapp. Ceci est 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>

Je souhaite donc déployer mon application Web sur Tomcat. Ce que je dois faire? Maven installer n'aide pas. Mais si je crée war par Maven, je peux l'importer dans Eclipse et le déployer sur Tomcat en cliquant sur "Ajouter et supprimer ..." dans la fenêtre contextuelle du serveur.

9
user348267

Ce problème peut être résolu en utilisant le plugin Tomcat pour Maven. Sa page d'accueil contient une documentation complète concernant le configuration du plugin et déploiement des fichiers war .

6
pkainulainen

Cela peut être fait de 2 manières.

  1. Voir l'URL ci-dessous

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

  2. Créez un projet maven avec Eclipse et localisez le dossier du projet à l'aide de la commande Invite (ou) Terminal

  3. mvn Eclipse: eclipse -Dwtpversion = 2.0 [dans le dossier du projet]

From Terminal locate your webproject

  1. Refersh projet Eclipse.

  2. Vous pouvez maintenant ajouter et supprimer un déploiement.

Eclipse ScreenPrint

5
Parthasarathy B

Découvert que l'URL du gestionnaire Tomcat (j'utilise Tomcat 6.0) est http://localhost:8080/manager/html, alors que le plug-in utilisé par le plug-in mvn Tomcat s'arrête au niveau du gestionnaire dans l'URL. Ajoutez l’URL spécifiée à votre pom.xml en tant que paramètre de configuration - (consultez cette URL pour plus de détails http://mojo.codehaus.org/Tomcat-maven-plugin/configuration.html ) et le tour est joué. ..

Avec Tomcat7, j'ai découvert que je devais configurer l'URL sous la forme http://localhost:8080/manager/html et utiliser un nom d'utilisateur avec un rôle manager-gui. Toutefois, l'utilisation d'un nom d'utilisateur avec le rôle manager-script, avec l'URL http://localhost:8080/manager/text, fonctionne également et est plus appropriée. Le rôle manager-script est le moyen idéal pour les scripts ant/maven.

4
LaRa

Je souhaite donc déployer mon application Web sur Tomcat. Ce que je dois faire? Maven installer n'aide pas. Mais si je crée war par Maven, je peux l'importer dans Eclipse et le déployer sur Tomcat en cliquant sur "Ajouter et supprimer ..." dans la fenêtre contextuelle du serveur.

Puisque vous utilisez m2Eclipse, ma recommandation serait de déployer votre application à l'aide du WTP. En supposant que vous ayez la fonctionnalité Maven d'intégration pour WTP installée (à partir de extras m2Eclipse ) et que Tomcat soit configuré en tant que serveur, cliquez avec le bouton droit de la souris sur votre projet et sélectionnez Exécuter> Exécuter sur le serveur ...

Une autre option serait d’exécuter votre application sur Jetty (oui, je sais que ce n’est pas ce que vous demandez, mais c’est une option très valable si vous ne souhaitez pas utiliser le WTP). Ajoutez l'extrait suivant à votre pom:

<project>
  ...
  <build>
    ...
    <plugins>
      ...
      <plugin>
        <groupId>org.mortbay.jetty</groupId>
        <artifactId>maven-jetty-plugin</artifactId>
        <version>6.1.10</version>
      </plugin>
    </plugins>
  </build>
</project>

Et exécutez simplement mvn jetty:run pour démarrer un serveur Jetty intégré et déployer votre application sur celui-ci.

La même chose peut être obtenue pour Tomcat en utilisant le Tomcat Maven Plugin mais à moins que vous ne souhaitiez le déployer sur un Tomcat distant (voir la page tilisation ), je ne vois aucun avantage. sur le Maven Jetty Plugin .

Pendant le développement, j'utiliserais la première option (déployer avec le WTP).

3
Pascal Thivent

Si vous souhaitez que votre fichier war créé par maven soit déployé directement sur le serveur Tomcat, cette configuration de déploiement Tomcat peut vous aider.

0
Sai prateek