Tomcatpipe理器中的Web应用程序版本

如何将我的Web应用程序configuration为在Tomcat中进行部署,以便Tomcat Manager在列出所有安装的应用程序(/ manager / html / list)的表中显示版本?

目前它为所有的应用程序显示“没有指定” ,包括它本身。 我正在使用Tomcat 7.0.11。

该版本是通过pipe理器部署应用程序时指定的版本。

请参阅文档 :

标签:指定一个标签名称,这允许关联已部署的webapp和一个版本号。 应用程序版本可以稍后重新部署,只需使用标记。

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

用maven设置输出war文件名:

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

输出 – > MyTest ## 0.0.1.war

或者使用格式为file_name ## version.war的简单重命名war文件;)

我正在运行Tomcat 8.0.30并在Tomcat Web应用程序pipe理器中添加一个版本,可以简单地将MyApp(在webapps文件夹下)重命名为MyApp##1.0.2而无需创build.war文件。

如果您要创build.war文件,请按照下列步骤操作:

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

在这里输入图像说明

  • input这个cmd – jar cvf MyApp.war .

这里的MyApp是Application的名称.war是创buildwar文件(也称为Web Application Archive )的扩展。 代表战争文件将被创build的当前目录..

做完这些之后,你会在webapps下看到MyApp.war文件。 现在只需重命名为MyApp##1.0.2.war ,服务器将自动重新加载名称的上下文。

在这里输入图像说明

而已!

  • 在我的情况下,myapp#v0.2.1表示法不起作用。
  • 我试过的标签参数,不工作太..(使用maven调用)

提到Apache文档 ,我试图手动部署战争文件,它的工作原理。

我不明白为什么它不适用于maven tomcat部署

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

对于maven,使用tomcat插件configurationpath:

 <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技巧并没有为我工作。