简体   繁体   中英

Web app version in Tomcat Manager

How can I configure my web application for deployment in Tomcat so that Tomcat Manager shows the version in the table that lists all applications installed (/manager/html/list)?

Currently it shows "None Specified" for all apps, including itself. I am using Tomcat 7.0.11.

The version is the one specified when deploying the application through the manager.

See the documentation :

tag: Specifying a tag name, this allows associating the deployed webapp with a version number. The application version can be later redeployed when needed using only the tag.

Also, you can deploy multiple versions of the same war by adding the version after ## (eg myApp##1.0.war, myApp##1.1.war). The manager will show this version in the overview.

With maven set the output war file name:

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

Output -> MyTest##0.0.1.war

Or simple rename war-file with format file_name##version.war ;)

  • In my case, myapp#v0.2.1 notation does not work.
  • I tried the tag parameter, not work too.. (call with maven)

Referred to Apache Documentation , I tried to deploy war file manually and it works.

I do not understand why it does not work with maven tomcat deploy

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

I am running Tomcat 8.0.30 and to add a version in Tomcat Web Application Manager one can simply rename MyApp (under webapps folder) to MyApp##1.0.2 without creating .war file.

If you want to create .war file, follow these steps:

  • Navigate to Tomcat webapps folder, on the address bar type cmd or cmd.exe or else you can open cmd and navigate to your tomcat webapps directory

在此输入图像描述

  • Enter this cmd - jar cvf MyApp.war .

Here MyApp is name of Application , .war is the extension for creating war file (also called as Web Application Archive ) and . represents current directory where war file will be created..

After doing this, you'll see MyApp.war file under webapps. Now just rename to MyApp##1.0.2.war and the server will automatically reload the context with name.

在此输入图像描述

That's it!

For maven, use the tomcat plugin configuration path :

<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 trick didn't worked for me.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM