Проблема при упаковке в банку

Я пытаюсь использовать команду jar, чтобы упаковать кучу файлов классов Java и изображений, которые они используют. У меня есть файлы .class в двух папках (пакетах): a и b, и все изображения в папке c. У меня также есть файл manifest.mf в папке META-INF, и внутри manifest.mf я указываю основной класс при запуске файла jar. Я использую следующую команду jar:

jar cvf MyJar.jar a b c META-INF

Но вывод MyJar.jar просто не запускается. Я что-то пропустил? Спасибо!


person skyork    schedule 24.12.2010    source источник
comment
Какое сообщение об ошибке вы получаете? Какую команду вы используете для запуска файла jar?   -  person Oswald    schedule 24.12.2010


Ответы (1)


Кажется, файлы манифеста нужно обрабатывать специальным параметром:

Если у вас есть уже существующий файл манифеста, который вы хотите, чтобы инструмент jar использовал для нового архива jar, вы можете указать его с помощью параметра -m:

 % jar cmf myManifestFile myJarFile *.class

Итак, в вашем случае

% jar cvmf META-INF/manifest.mf MyJar.jar a b c META-INF

Если вам больше не нужен META-INF (для других файлов), я бы отказался от него, чтобы быть в безопасности.

person Thilo    schedule 24.12.2010