2

我正在尝试使用buildnumber-maven-plugin将 SCM 内部版本号附加到 WAR 工件名称,然后用于tomcat7-maven-plugin部署它,但在不包含内部版本号的上下文路径中。所以我正在制作foo-r1234.war,其中 foo 是我的项目,1234 是 Subversion 中的修订号,但我想将它部署在 Tomcat 上下文foo中。

我得到了战争一代来反映内部版本号,但问题是 Tomcat 插件没有看到内部版本号插件${buildNumber}分配的属性:

<finalName>foo-r${buildNumber}</finalName>
...
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>buildnumber-maven-plugin</artifactId>
<version>1.4</version>
    <executions>
        <execution>
            <id>create-buildno</id>
            <phase>validate</phase>
            <goals>
                <goal>create</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <doCheck>false</doCheck>
        <doUpdate>false</doUpdate>
    </configuration>
</plugin>
...
<plugin>
    <groupId>org.apache.tomcat.maven</groupId>
    <artifactId>tomcat7-maven-plugin</artifactId>
    <configuration>
        <url>http://localhost:8080/manager/text</url>
        <path>/foo</path>
    <warFile>${project.build.directory}/${project.build.finalName}.war</warFile>
    </configuration>
</plugin>

我明白了

[错误] 无法在项目 foo 上执行目标 org.apache.tomcat.maven:tomcat7-maven-plugin:2.2:deploy (default-cli):找不到战争文件:/my/path/target/foo-r${ buildNumber}.war -> [帮助 1] [错误]

这表明 tomcat 插件没有看到 ${buildNumber}。为了将 foo-r${buildNumber}.war 部署到 Tomcat 中的上下文 foo,如何使其可见?

有关的:

如何使用maven tomcat插件将带有自动构建号的war部署到tomcat

部署目标期间未设置时间戳和 buildNumber 属性

4

1 回答 1

0

在配置 /${project.build.finalName} 中添加构建最终名称

于 2019-03-03T04:07:28.353 回答