web-dev-qa-db-ja.com

Maven:WARをTomcatのwebappsディレクトリにコピーします

生成されたWARファイルをターゲットディレクトリからTomcatのwebappsディレクトリにコピーするpom.xmlに追加できるものはありますか?

42
l15a

Maven WARプラグインを使用しました: http://maven.Apache.org/plugins/maven-war-plugin/usage.html

15
l15a
<build>
    <plugins>
        <plugin>
            <groupId>org.Apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <configuration>
                <outputDirectory>U:\JBoss6\server\default\deploy\</outputDirectory>
            </configuration>
        </plugin>

Pom.xmlに追加したら、mvn packageまたはmvn war:warを呼び出してWARファイルをコピーできます。

65
koszu28

http://cargo.codehaus.org/Deploying+to+a+running+container を使用して、それに応じて構成できます。

7

これは正しいアプローチです:

        <plugin>
            <groupId>org.Apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <version>2.3</version>
            <configuration>
             <warName>${name}</warName>
             <outputDirectory>C:\Tomcat7\webapps</outputDirectory>
            </configuration>
        </plugin>

これにより、Mavenプロジェクトの名前でwarファイルがC:\ Tomcat7\webappsフォルダーに配置されます。

6
Aled Evans

また、jettyプラグインを見ることができます。 「mvn jetty:run-war」と入力するだけで、jettyはwarファイルを実行します。

編集:Jettyは、開発とテストに適した軽量のサーブレットコンテナです。また、開始するのが非常に速いです。

6

または、Tomcatにターゲットディレクトリを見てもらい、そこから直接デプロイすることもできます。

Context.xmlまたはserver.xmlのContext要素で:

<Context path="" docBase="/path/to/target/exploded">
...
</Context>

次に、war:explodedゴールを使用して、爆発した戦争を作成できます。

5
Clay

理想的ではありませんが、本当に奇妙なアプリサーバーのセットアップがある場合は、antrunタスクセットを常に使用して、パッケージングの実行時に実行できます。

<build>
    ....
    <plugins>
       <plugin>
          <artifactId>maven-antrun-plugin</artifactId>
          <executions>
            <execution>
              <phase>package</phase>
              <configuration>
                <tasks>
                  <!-- Ant copy tasks go here -->
                </tasks>
              </configuration>
              <goals>
                <goal>run</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
     </plugins>
  </build>
3
sal

上記のすべての回答をありがとう。

以下の答えは私のために機能します。これは単なる統合されたものです。特にない!

</project>
 ........ 
   <build>
    <finalName>HelloWorld1</finalName>
    <plugins>
        <plugin>
            <groupId>org.Apache.maven.plugins</groupId> 
            <artifactId>maven-war-plugin</artifactId>
            <configuration>
                <outputDirectory>C:\Program Files (x86)\Apache-Tomcat-8.5.8\webapps\</outputDirectory>
            </configuration>
        </plugin>
    </plugins>
  </build>
</project>

詳細については。詳細については、 dependency:copy 公式ページを参照してください。

1
GrabNewTech

dependency plugin でこれを行うこともできます

1
Brian Fox