Um arquivo JAR (Java Archive) é um formato de arquivo de pacote tipicamente usado para agregar muitos arquivos de classe Java (Java class files) e metadados e recursos associados (como texto, imagens, etc.) em um único arquivo para distribuição. Arquivos JAR são construídos sobre o formato de arquivo ZIP e utilizam a extensão de arquivo .jar. Eles são essenciais para a distribuição de aplicações Java, bibliotecas e applets.
Arquivos JAR podem ser executados diretamente se contiverem um arquivo manifest (manifest file) que especifique a classe principal (main class). Isso permite que os usuários executem a aplicação sem a necessidade de extrair o conteúdo do arquivo. Além disso, arquivos JAR suportam assinaturas digitais (digital signatures), que são cruciais para verificar a autenticidade e a integridade do conteúdo, prevenindo a injeção de código malicioso, especialmente em distribuições pela internet. Eles também podem ser compactados para reduzir seu tamanho, facilitando o download e a distribuição. Os arquivos JAR são uma parte fundamental do ecossistema Java, promovendo a modularidade e a reusabilidade do código.