Как запустить класс в WAR из командной строки?

У меня есть класс Java, который имеет основной, и я использовал для запуска в качестве автономного приложения из командной строки, например.

java -jar myjar.jar params

Мне нужно было переупаковать код для запуска под apache, и весь мой код, включая класс точки входа из старого jar-файла, оказался в файле WAR для легкой отправки на веб-сервер.

Тем не менее, я все еще хочу иметь возможность запустить его из командной строки, и код не изменился и все там, я просто не могу понять, как заставить его работать.

Вот что я попробовал ...

Я предположил, что ВОЙНА была как банка, так

java -jar mywar.war params

Не удалось сказать, что в манифесте не определен основной класс.

Я вручную добавил манифест в войну и попробовал снова, с тем же эффектом.

Я заметил, что в моей войне у меня была папка с именем META-INF, содержащая manifest.mf, поэтому я добавил в нее строку, объявляющую мой основной класс, как в обычном манифесте ...

Manifest-Version: 1.0
Main-Class: mypackage.MyEntryPointClass

Это далоnoClassDefFoundError mypackage.MyEntryPointClass, который является своего рода прогрессом. Это заставило меня поверить, что это был просто вопрос пути, поэтому я попытался

Manifest-Version: 1.0
Main-Class: WEB-INF.classes.mypackage.MyEntryPointClass

Теперь я получаю ту же ошибку, но с трассировкой стека ...

Exception in thread "main" java.lang.NoClassDefFoundError: WEB-INF/classes/mypackage/MyEntryPointClass (wrong name: mypackage/MyEntryPointClass)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)

Я немного погуглил, но не могу найти ничего, что отвечало бы на мой вопрос, и я прочитал здесь несколько других вопросов, которые немного отличаются, поэтому я решил опубликовать.

Java 1.5, не то чтобы я думаю, что это должно иметь значение.