Tomcat Manager 中的 Web 应用程序版本

问题描述 投票:0回答:6

如何配置要在 Tomcat 中部署的 Web 应用程序,以便 Tomcat Manager 在列出所有已安装应用程序的表 (/manager/html/list) 中显示版本?

目前,它为所有应用程序(包括其自身)显示“未指定”。我使用的是 Tomcat 7.0.11。

java tomcat web-applications version
6个回答
40
投票

版本是通过管理器部署应用时指定的版本。

请参阅文档

tag:指定标签名称,这允许将部署的 Web 应用程序与版本号相关联。稍后可以在需要时仅使用标签重新部署应用程序版本。

此外,您可以通过在##后面添加版本来部署同一war的多个版本(例如myApp##1.0.war,myApp##1.1.war)。管理器将在概览中显示此版本。


14
投票

使用maven设置输出war文件名:

...
<artifactId>MyTest</artifactId>
<version>0.0.1</version>
...
<build>
    <finalName>${project.artifactId}##${project.version}</finalName>
</build>
...

输出 -> MyTest##0.0.1.war

或者简单地重命名 war 文件,格式为 file_name##version.war ;)


2
投票

对于maven,使用tomcat插件配置路径:

<project>
    ...
    <build>
        ...
        <plugins>
            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <version>2.2</version>
                <configuration>
                    <path>/${project.artifactId}##${project.version}</path>
                </configuration>
            </plugin>
        </plugins>
        ...
    </build>
    ...
</project>

finalName 技巧对我不起作用。


1
投票
  • 就我而言,myapp#v0.2.1 表示法不起作用。
  • 我尝试了标签参数,也不起作用..(用maven调用)

参考Apache文档,我尝试手动部署war文件并且它有效。

我不明白为什么它不能与maven tomcat部署一起使用

Configuration : Simple Java EE/restlet app with Tomcat 7 / Java 7 / Maven 4 

1
投票

我正在运行

Tomcat 8.0.30
并在 Tomcat Web 应用程序管理器中添加一个版本,只需将 MyApp(在 webapps 文件夹下)重命名为
MyApp##1.0.2
,而无需创建
.war
文件。

如果您想创建

.war
文件,请按照以下步骤操作:

  • 导航到 Tomcat webapps 文件夹,在地址栏上输入 cmd 或 cmd.exe,否则您可以打开 cmd 并导航到 tomcat webapps 目录

  • 输入此命令 -
    jar cvf MyApp.war .

这里MyApp是应用程序的名称

.war
是创建war文件的扩展名(也称为Web应用程序存档)和.代表将创建 war 文件的当前目录..

完成此操作后,您将在 webapps 下看到

MyApp.war
文件。现在只需重命名为
MyApp##1.0.2.war
,服务器就会自动重新加载带有名称的上下文。

就是这样!


0
投票

为了避免“tomcat7-maven-plugin”插件依赖,您可以轻松设置“maven-war-plugin”的变量“warName”的值

${project.artifactId}##${project.version}

致以诚挚的问候

© www.soinside.com 2019 - 2024. All rights reserved.