web-dev-qa-db-fra.com

Tomcat 7 - Plugin Maven?

Je voulais juste vérifier, est-ce que quelqu'un a trouvé ou travaille sur un plugin Tomcat 7? Si non, est-ce que quelqu'un est intéressé à m'aider à le mettre en place?

Je veux une autre alternative rapide à Glassfish, JBoss AS 6.0 est encore un peu lourd pour les maquettes rapides.

Walter

28
Walter White

Il existe t7mp - un plugin Tomcat 7 Maven - dans le code Google.

Cargo (et son plug-in Cargo Maven2) prend également en charge Tomcat 7 (il s'agissait de CARGO-790 ).

Apache Tomcat Maven Plugin 2.0-beta-1 prend en charge Tomcat 7.

8
Pascal Thivent

Cela fonctionne pour moi comme suit.

Mon setting.xml

 <server>  
   <id>local_Tomcat</id>  
   <username>ray</username>  
   <password>password</password>  
 </server>  

Ma configuration de plugin

 <plugin>
  <groupId>org.codehaus.mojo</groupId>
  <artifactId>Tomcat-maven-plugin</artifactId>
  <configuration>
     <server>local_Tomcat</server>  
     <url>http://localhost:8080/manager/text</url>  
  </configuration>
 </plugin>

Mon Tomcat-utilisateurs.xml

 <role rolename="manager-gui"/>
    <role rolename="manager-script"/>
  <user password="password" roles="manager-gui, manager-script" username="ray"/>
41
raymond.mh.ng

j'utilise le plugin officiel Tomcat7 Maven d'Apache comme suit:

            <plugin>
                <groupId>org.Apache.Tomcat.maven</groupId>
                <artifactId>Tomcat7-maven-plugin</artifactId>
                <version>2.0</version>
                <configuration>
                    <path>/${project.artifactId}</path>
                    <port>8080</port>
                </configuration>
            </plugin>

et pour l'exécuter: mvn Tomcat7:run

13
Mahmoud Saleh

En utilisant maven cargo, vous pouvez configurer votre projet de la manière suivante:

<plugin>
    <groupId>org.codehaus.cargo</groupId>
    <artifactId>cargo-maven2-plugin</artifactId>
    <version>1.0.6</version>
    <configuration>
        <container>
            <containerId>Tomcat7x</containerId>
            <type>installed</type>
            <home>${catalina.home}</home>
        </container>
        <configuration>
            <type>existing</type>
            <home>${catalina.home}</home>
        </configuration>
        <deployer>
            <type>installed</type>
            <deployables>
                <deployable>
                    <groupId>${project.groupId}</groupId>
                    <artifactId>${project.artifactId}</artifactId>
                    <type>war</type>
                </deployable>
            </deployables>
        </deployer>
    </configuration>
</plugin>       

n'oubliez pas de configurer votre propriété catalina.home

Le vous pouvez le déployer en utilisant:

mvn cargo:deploy
7
Dante

Il y a le Tomcat Maven Plugin 7 plugin développé par l'équipe Apache Tomcat.

Actuellement, vous devez vérifier les sources et l’installer dans votre référentiel local . Après cela, vous pourrez l’utiliser dans la section plugin de votre pom:

      <plugin>
          <groupId>org.Apache.Tomcat.maven</groupId>
          <artifactId>Tomcat7-maven-plugin</artifactId>
          <version>2.0-SNAPSHOT</version>
        <executions>
          <execution>
            <id>start-Tomcat</id>
            <phase>compile</phase>
            <goals>
              <goal>run</goal>
            </goals>
            <configuration>
                  <path>/</path>
                  <serverXml>src/main/tomcatconf/server.xml</serverXml>
                </configuration>
          </execution>
        </executions>
      </plugin>
7
tobr

Après avoir eu cette erreur pendant trois jours consécutifs, voici ma solution:

L'utilisateur que vous utilisez pour vous connecter a besoin au moins du rôle manager-script . Dans votre /conf/Tomcat-users.xml

<role rolename="manager-script"/>
<user username="test" password="test" roles="manager-script"/>

Dans votre pom.xml, incluez le plugin suivant

    <plugin>
      <groupId>org.Apache.Tomcat.maven</groupId>
      <artifactId>Tomcat7-maven-plugin</artifactId>
      <version>2.0</version>
      <configuration>
        <url>http://server.url:8080/manager/text</url>
        <path>/YourApp</path>
        <username>test</username>
        <password>test</password>
      </configuration>
    </plugin>

Contrairement à ce que j'ai trouvé sur Internet, vous n'avez PAS besoin de modifier votre fichier maven setting.xml. Tomcat7-maven-plugin peut être configuré directement dans le tag de configuration

Un mot à l'URL-tag: j'ai testé le suffixe 

  • /directeur
  • / manager/html
  • / manager/text 

dont seulement/manager/texte travaillé

Mes versions:

  • Tomcat: 7.0.33
  • Maven: 3.0.4
  • Tomcat7-maven-plugin: 2.0
  • Java: 1.7.0_07
5
Torben Dohrn

J'utilise Tomcat7-maven-plugin pour mon instance intégrée Tomcat. Voici comment je l'ai configuré. Étant donné que mon application nécessite une authentification jaas, je peux également l'indiquer dans les paramètres mêmes.

<plugin>
    <groupId>org.Apache.Tomcat.maven</groupId>
    <artifactId>Tomcat7-maven-plugin</artifactId>
    <configuration>
    <!-- http port -->
        <port>8080</port>
        <path>/gcs-explorers</path>
        <contextFile>${basedir}/src/main/webapp/META-INF/context.xml</contextFile>
        <addWarDependenciesInClassloader>true</addWarDependenciesInClassloader>
        <systemProperties>
            <Java.security.auth.login.config>${basedir}/conf/jaas.config</Java.security.auth.login.config>
        </systemProperties>
        <url>http://127.0.0.1:8080/manager/html</url>
        <username>admin</username>
        <password>admin</password>
        <addContextWarDependencies>true</addContextWarDependencies>
        <addWarDependenciesInClassloader>true</addWarDependenciesInClassloader>
        <configurationDir>${basedir}</configurationDir>
    </configuration>
    <dependencies>
        <dependency>
            <groupId>com.google.protobuf</groupId>
            <artifactId>protobuf-Java</artifactId>
            <version>2.2.0</version>
            <type>jar</type>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>com.company.package.jaas</groupId>
            <artifactId>gcs-jaas</artifactId>
            <version>0.0.1-SNAPSHOT</version>
            <type>jar</type>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>com.company.gcs</groupId>
            <artifactId>package-file-share</artifactId>
            <version>0.0.1-SNAPSHOT</version>
            <type>war</type>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>com.Oracle</groupId>
            <artifactId>ojdbc6</artifactId>
            <version>11.2.0.3</version>
            <scope>runtime</scope>
        </dependency>
    </dependencies>
</plugin>
2
n00bc0der

En fait, le plugin standard fonctionne pour moi. Il me suffisait de créer le script manager de rôle dans les utilisateurs Tomcat et de modifier le paramètre url en http://localhost:8080/manager/html afin de le rendre opérationnel: 

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>Tomcat-maven-plugin</artifactId>
    <configuration>
        <url>http://localhost:8080/manager/html</url>
        <server>local</server>
        <path>/${project.artifactId}</path>
        <update>true</update>
    </configuration>
</plugin>
0
ferrema