Ответ 1
Файлы Jar на самом деле являются ZIP файлами с дополнительной информацией и, возможно, лучшей индексацией. При упаковке дополнительной информации в ZIP файл становится важным разместить ее в месте, которое вряд ли будет противоречить нормальному содержимому ZIP файла.
Выбор META-INF в качестве каталога, в котором может храниться информация о файле JAR, - попытка использовать каталоги в качестве пространства имен в ZIP файле. В основном, если он был сохранен в META-INF, это была информация метаданных или (выбор среди возможных значений мета), "информация о себе" или "абстрактная информация".
Это позволило хранить информацию, которая повлияла бы на обработку ZIP файла в самом файле ZIP, не нарушая упаковку ZIP файла. Это было ключевым, так как это предотвратило необходимость создания нового, переносимого формата сжатия и популяризации его с целью упаковки кода Java. Когда люди привыкли к утилите META-INF, новые "пространства имен" в ZIP файле были созданы для определенных форматов упаковки, например "WEB-INF".
Первыми "расширениями" в формате ZIP файла были добавление манифеста или MANIFEST.MF и необязательное добавление индексного списка (для ускорения извлечения элементов). Теперь такие файлы (из-за наличия известного пространства имен расширений) могли распространяться многими другими способами, такими как недавнее добавление подкаталога "услуги" для регистрации услуг.
Если вы считаете, что файлы ZIP содержат файлы и каталоги, имеет смысл использовать каталог в качестве пространства имен.