Почему банка игнорирует мою декларацию?

Я пытался создать исполняемую банку с помощью этой команды:

jar -cvfm h.jar Manifest.mf Whatever1.class Whatever2.class

Декларация содержит это:

Main-Class: Whatever1

Но если я пытаюсь выполнить банку, я добираюсь: Failed to load Main-Class manifest attribute from my.jar. Я извлек банку, и я видел, что содержание он является явным, было это:

Manifest-Version: 1.0
Created-By: 1.6.0_18 (Sun Microsystems Inc.)

Почему моя декларация была проигнорирована?

Править: Я знаю то использование -e флаг я могу указать точку входа и банку, генерирует корректную декларацию, но я хотел бы знать, как заставить эту версию работать.

7
задан Geo 30 January 2010 в 19:54
поделиться

3 ответа

Добавьте перерыв линии после последней строки Mainest.MF

15
ответ дан 6 December 2019 в 11:49
поделиться

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

2
ответ дан 6 December 2019 в 11:49
поделиться

Полагаю, вам нужно запустить jar типа:

jar -cvf h.jar -m Manifest.mf Whatever1.class Whatever2.class

Потому что значения для опций идут непосредственно после самой опции.

0
ответ дан 6 December 2019 в 11:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: