JAR-файлы — это обычные архивы, в которых есть служебные файлы (метаданные) с описанием содержимого архивов. JAR-файлы создаются утилитой jar из JDK. Есть много общедоступных программ для создания ZIP-архивов, с помощью которых тоже можно создавать и просматривать JAR-файлы. Формат архива позволяет распространять большие группы классов и их ресурсов в одном файле. Исполнительная система Java автоматически извлекает отдельные файлы классов из архива по мере необходимости.