Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6764931
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 26, 20262026-05-26T14:39:09+00:00 2026-05-26T14:39:09+00:00

Is there anyone who has succeeded in making a self-contained .war file using Tomcat

  • 0

Is there anyone who has succeeded in making a self-contained .war file using Tomcat 7 embedded ? With Maven that is.

I mean with “self-contained” that the war file can also be used at the command line as:

java -jar application.war

With which it should pick up the Main Class of META-INF/MANIFEST.MF and run the application with the provided embedded Tomcat 7.

I managed to make it run as such, but I can’t seem to be able to package it into a .war file that does the same.

Anybody has a link to documentation of some sorts ?

TIA !!!

Jan

Adding an extract from the pom.xml :

  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.1.1</version>
    <configuration>
      <failOnMissingWebXml>false</failOnMissingWebXml>
      <archive>
        <manifest>
          <mainClass>EmbeddedMain</mainClass>
          <addClasspath>true</addClasspath>
          <classpathPrefix>WEB-INF/lib/</classpathPrefix>
        </manifest>
      </archive>
      <webResources>
        <resource>
          <directory>target/classes</directory>
        </resource>
      </webResources>
    </configuration>
  </plugin>

Where “EmbeddedMain” is the class containing the main() method. And although everything seems to be in its place, I’m still getting:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/catalina/LifecycleListener
Caused by: java.lang.ClassNotFoundException: org.apache.catalina.LifecycleListener
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Could not find the main class: EmbeddedMain. Program will exit.

MANIFEST.MF seems to be okay: WEB-INF/lib/tomcat-embed-core-7.0.22.jar contains the missing class.

Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Created-By: Apache Maven
Built-By: jan
Build-Jdk: 1.6.0_29
Main-Class: EmbeddedMain
Class-Path: WEB-INF/lib/spring-web-3.0.6.RELEASE.jar WEB-INF/lib/aopal
 liance-1.0.jar WEB-INF/lib/spring-beans-3.0.6.RELEASE.jar WEB-INF/lib
 /spring-core-3.0.6.RELEASE.jar WEB-INF/lib/jwt-3.1.11.jar WEB-INF/lib
 /commons-fileupload-1.2.1.jar WEB-INF/lib/commons-io-1.4.jar WEB-INF/
 lib/next-persistence-0.0.3.jar WEB-INF/lib/hibernate-entitymanager-3.
 6.7.Final.jar WEB-INF/lib/hibernate-core-3.6.7.Final.jar WEB-INF/lib/
 antlr-2.7.6.jar WEB-INF/lib/dom4j-1.6.1.jar WEB-INF/lib/hibernate-com
 mons-annotations-3.2.0.Final.jar WEB-INF/lib/jta-1.1.jar WEB-INF/lib/
 cglib-2.2.jar WEB-INF/lib/javassist-3.12.0.GA.jar WEB-INF/lib/hiberna
 te-jpa-2.0-api-1.0.1.Final.jar WEB-INF/lib/kryo-1.04.jar WEB-INF/lib/
 asm-3.2.jar WEB-INF/lib/reflectasm-1.01.jar WEB-INF/lib/minlog-1.2.ja
 r WEB-INF/lib/annotations-1.3.9.jar WEB-INF/lib/tomcat-embed-core-7.0
 .22.jar WEB-INF/lib/tomcat-embed-jasper-7.0.22.jar WEB-INF/lib/tomcat
 -embed-logging-juli-7.0.22.jar WEB-INF/lib/derby-10.8.1.2.jar WEB-INF
 /lib/spring-context-3.0.6.RELEASE.jar WEB-INF/lib/spring-aop-3.0.6.RE
 LEASE.jar WEB-INF/lib/spring-expression-3.0.6.RELEASE.jar WEB-INF/lib
 /spring-asm-3.0.6.RELEASE.jar WEB-INF/lib/spring-orm-3.0.6.RELEASE.ja
 r WEB-INF/lib/spring-jdbc-3.0.6.RELEASE.jar WEB-INF/lib/spring-tx-3.0
 .6.RELEASE.jar WEB-INF/lib/commons-lang-2.5.jar WEB-INF/lib/slf4j-api
 -1.6.3.jar WEB-INF/lib/slf4j-log4j12-1.6.3.jar WEB-INF/lib/log4j-1.2.
 14.jar WEB-INF/lib/jcl-over-slf4j-1.6.3.jar WEB-INF/lib/commons-loggi
 ng-1.1.jar WEB-INF/lib/commons-collections-3.2.jar
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-26T14:39:09+00:00Added an answer on May 26, 2026 at 2:39 pm

    I’ve tried various libraries but I could make none work fully to what I want to do. You’ve got those that do clever classloading tricks to keep the war file as is. And you’ve got those which explode all jars into separate files and cram it all into an executable jar.

    Of the first category I found that Winstone was the best I could find. Just add the plugin, rebuild and run. And indeed, something deploys the war into an embedded web container. Which is unfortunately not powerful enough to run a complex web application.

    I’m ruling out solutions of the second category because of the file conflicts when decompressing jars containing files at the same path. Typically META-INF/…. And more precisely the Spring related meta data. Which has to be merged together into a single file. Otherwise the application simply doesn’t start.

    I’ve opted for a third kind of solution: Have the executable jar contain the war file as such. When it is run, it will extract the war file into a temporary directory and run the embedded web container (in my case Tomcat) using the just extracted war file. Additionally opening a browser on the right url.

    It’s easy to implement and anybody can start it. Although I would have preferred to keep the jar file as such, this avoids any complications due to class loading or exploded jar file clashes.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Is there anyone who has used or looked into using Jitterbit as well as
Is there anyone who has done some integration with securetrading using stapi? I currently
Is there anyone who has already tried to use the Microsoft Bing translator web
Is there anyone who knows how to destroy a javascript (jquery) function? I'm using
is there anyone who has had experience with csv's and ruby. i am new
Is there anyone who has any good tutorial about admob for android apps? from
Has anyone out there actually succeeded in creating a prerequisitie for o2003.msi? There are
is there anyone who makes use of the Microsoft Open XML SDK 2.0 for
Is there anyone who have encountered Processing Dirty Regions error in MyEclipse? Actually everytime
Is there anyone who knows this? I have been trying this for the last

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.