1

我最近开始使用 cargo-maven2-plugin (org.codehaus.cargo) 将 WAR 工件部署到远程服务器,它似乎工作得很好,但有一个例外。一旦将目标文件复制到远程服务器,我似乎无法找到一种方法来指定目标文件的名称。例如,构建的工件名称为“my-war-artifact-2013.10.war”,但当它部署到服务器时,我希望将其部署为“my-war-artifact.war”。

所有文档都指出可以这样做,但只能在使用本地类型时完成。有没有人这样做或想出办法做到这一点?我迫切需要这种能力!以下是我的 POM 的相关部分...

<plugin>
  <groupId>org.codehaus.cargo</groupId>
  <artifactId>cargo-maven2-plugin</artifactId>
  <executions>
    <execution>
      <id>deploy</id>
      <phase>package</phase>
      <goals>
        <goal>deployer-redeploy</goal>
      </goals>
    </execution>
  </executions>
  <configuration>
    <container>
      <containerId>tomcat7x</containerId>
      <type>remote</type>
    </container>
    <configuration>
      <type>runtime</type>
      <properties>
        <cargo.remote.username>${tomcat.username}</cargo.remote.username>
        <cargo.remote.password>${tomcat.password}</cargo.remote.password>
        <cargo.tomcat.manager.url>
          http://${host}${port}/manager
        </cargo.tomcat.manager.url>
      </properties>
    </configuration>
  </configuration>
</plugin>
4

1 回答 1

4

在货物配置中添加:

...
<deployables>
    <deployable>
        <groupId>${project.groupId}</groupId>
        <artifactId>${project.artifactId}</artifactId>
        <type>war</type>
        <properties>
            <context>my-war-artifact</context>
        </properties>
    </deployable>
</deployables>

我目前将它与 TomEE 结合使用,复制到 webapps 的目标文件名是由后缀“war”添加的上下文标签所包含的名称。

于 2013-07-09T14:04:53.273 回答