Файлы манифеста Java - PullRequest
       20

Файлы манифеста Java

3 голосов
/ 27 апреля 2011

Я пытаюсь разобраться в этих файлах, мне кажется, что я читаю чтение, облегчающее понимание и запоминание Может ли кто-нибудь объяснить файлы манифеста и почему они были созданы? Пояснения по связкам также приветствуются.

Пожалуйста и спасибо

Ответы [ 3 ]

14 голосов
/ 27 апреля 2011

«Манифест» в Java обычно означает META-INF/MANIFEST.MF файл внутри файла jar.

Он добавляет метаданные о файле .jar и его содержимом.

Наиболее распространенное использование - это, вероятно, указание основного класса файла jar (через атрибут Main-Class), чтобы позволить файлу jar выполняться непосредственно (используя java -jar myFile.jar).

:

  • хранить хэши хранимых файлов для проверки подписи
  • запечатывание файлов JAR (т.е. убедитесь, что только пакеты из этого файла JAR загружены в пакеты, определенные в этом файле JAR).
  • хранить информацию о версии / продукте / производителе для чтения во время выполнения

Этот общий механизм Java объяснен в этом руководстве .

Поскольку вытакже упомяните связки, возможно, вы на самом деле говорите о OSGi Bundle Manifest , который основывается на этом механизме и превращает простой jar-файл в связку (иначе«модуль», иногда «плагин»).

1 голос
/ 23 апреля 2014

На платформе Java файл манифеста - это конкретный файл, содержащийся в архиве JAR.Он используется для определения данных расширения и пакета.Это файл метаданных, который содержит пары имя-значение, организованные в разных разделах.Если файл JAR предназначен для использования в качестве исполняемого файла, файл манифеста указывает основной класс приложения.Файл манифеста называется MANIFEST.MF.

0 голосов
/ 27 апреля 2011

Насколько я знаю, манифест используется:

  • для предоставления удобочитаемой информации о конкретном jar-файле: например, версия, производитель, jdk, против которого он был построен, возможно, идентификатор сборки сервера непрерывной интеграции ипоэтому
  • для предоставления машиночитаемой информации, такой как зависимости модулей, в каркасах, таких как OSGi

Большая часть этой информации, как правило, предназначена для чтения человеком и машиной.

...