Файл описания MANIFEST.MF
Файл MANIFEST.MF, расположенный в каталоге META-INF архивного файла, предназначен для нескольких целей:
перечисления файлов из архива, снабженных цифровой подписью;
перечисления компонентов JavaBeans, расположенных в архиве;
указания имени основного класса для выполнения-приложения из архива;
записи сведений о версии пакета.
Вся информация сначала записывается в обычном текстовом файле с любым именем, например, manif. Потом запускается утилита jar, в которой этот файл указывается как значение параметра т, например:
jar cmf manif Base.jar classes Base.class
Утилита проверяет правильность записей в файле manif и переносит их в файл MANIFEST.MF, добавляя свои записи.
Файл описания manif должен быть написан по строгим правилам, изложенным в спецификации JAR File Specification. Ее можно найти в документации Java 2 SDK, в файле docs\guide\jar\jar.html.
Например, если мы хотим выполнять приложение с главным файлом Base.class из архива Base.jar, то файл manif должен содержать как минимум две строки:
Main-Class: Base
Первая строка содержит относительный путь к главному классу, но не к файлу, т. е. без расширения class. В этой строке каждый символ имеет значение, даже пробел. Вторая строка пустая — файл обязательно должен заканчиваться пустой строкой, точнее говоря, символом перевода строки '\n'.
После того как создан архив Base.jar, можно выполнять приложение прямо из него:
Java -jar Base.jar