47

有什么我可以添加的pom.xml内容将生成的.war文件从target目录复制到我的Tomcatwebapps目录吗?

4

9 回答 9

73
<build>
   <plugins>
     <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-war-plugin</artifactId>
        <version>3.2.1</version>
        <configuration>
           <outputDirectory><!-- Tomcat webapps location--></outputDirectory>
           <!-- Example of Tomcat webapps location :D:\tomcat\webapps\ -->
        </configuration>
      </plugin>
    </plugins>
</build>

将它添加到您的 . 文件后,您可以通过调用或pom.xml来复制 WAR 文件。 mvn packagemvn war:war

于 2011-02-11T08:04:49.347 回答
19

我使用了 Maven WAR 插件: http ://maven.apache.org/plugins/maven-war-plugin/usage.html

于 2009-04-10T16:15:26.137 回答
9

这是正确的方法:

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

这将在 C:\Tomcat7\webapps 文件夹中放置一个带有 maven 项目名称的 war 文件。

于 2013-06-05T23:16:22.140 回答
7

您可以使用http://cargo.codehaus.org/Deploying+to+a+running+container并进行相应的配置。

于 2008-12-15T20:57:42.847 回答
6

你也可以看看码头插件。只需输入“mvn jetty:run-war”,码头就会运行你的战争文件。

编辑:Jetty 是一个适合开发和测试的轻量级 servlet 容器。启动也快如闪电。

于 2008-12-15T23:59:37.987 回答
6

或者,您可以让 tomcat 查看您的目标目录并直接从那里部署。

在您的 context.xml 或 server.xml 的 Context 元素中:

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

然后你可以使用 war:exploded 目标来创建你的爆炸战争。

于 2009-02-11T05:38:56.880 回答
3

不理想,但如果你有一个非常奇怪的应用服务器设置,你总是可以使用 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>
于 2008-12-16T19:51:10.000 回答
2

感谢以上所有答案。

下面的答案对我有用。这只是一个合并的。没什么特别的!

</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官方页面。

于 2016-12-12T02:23:21.017 回答
1

您也可以使用依赖插件执行此操作

于 2009-04-19T02:05:04.573 回答