如何在war文件名中有版本,但在部署到tomcat时不需要在url中有版本

quhf5bfb  于 2021-10-10  发布在  Java
关注(0)|答案(1)|浏览(326)

我想版本化我的war,使devops的生活更轻松,即:foo-3.2.0.war。在pom.xml中,我有:

<build>
  <finalName>foo</finalName>

而且

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-war-plugin</artifactId>
  <version>${maven-war-plugin.version}</version>
  <configuration>
    <warName>${project.artifactId}-${project.version}</warName>

将pom.xml中的当前版本传递给war文件名。到目前为止,一切顺利。
问题在于,部署到tomcat时,url中需要该版本。我希望通过以下方式访问我的应用程序: http://hostname:port/foo 而不是 http://hostname:port/foo-3.2.0 (等等),因为我不得不用版本更改来烦扰我的消费者。
有没有可能在不返回未版本的war文件的情况下解决此问题?

r7knjye2

r7knjye21#

你可以用 ${project.artifactId}##${project.version} 作为命名方案。
后面的部分 ## 不会成为上下文名称的一部分(参见并行部署)。

相关问题