JAR-файл времени выполнения в Java

Опубликовано: 13 Сентября, 2022

JAR означает файл архива Java. Это независимый от платформы формат файла , который позволяет объединять и упаковывать все файлы, связанные с java-приложением, файлами классов, аудиофайлами и файлами изображений. Эти файлы необходимы, когда мы запускаем программу-апплет. Он объединяет файлы JAR с использованием алгоритма сжатия данных. Этими файлами jar можно манипулировать с помощью программ zip, таких как WINZIP или WINRAR.

Это упрощает распространение, так как все файлы классов упаковываются/объединяются вместе и распространяются среди клиентских приложений. как один файл jar. Эти файлы jar могут быть подписаны автором с использованием цифрового сертификата. Эти jar-файлы можно аутентифицировать с помощью цифровых сертификатов и проверки подписи автора. JRE (Java Runtime Environment) загружает классы из JAR-файла, не искажая его.

Методы: существует 2 способа создания файла JAR.

  1. Использование IDE
  2. Использование командной строки

Давайте обсудим их обоих подробно.

Способ 1 — Использование IDE

1. Создать файл JAR с помощью IDE, такой как Netbeans или Eclipse, довольно просто. В файле у нас есть опция экспорта, которая помогает нам экспортировать приложение Java в виде файла JAR. После этого перейдите к

File -> Export->Java-> JAR file

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

3. Нажмите кнопку Готово.

4. Затем мы указываем место, где мы хотим создать файл jar.

5. Это графически изображено ниже на двух снимках, которые выглядят следующим образом:

Способ 2: с помощью командной строки

Используя инструмент jar, мы можем создать файл jar, как показано ниже.

cmd>> jar cvf jarfile inputfileDir1 inputfileDir2

Здесь,

  • c — создать новый файл jar
  • v – подробный режим, который отображает сообщения во время создания jar-файла.
  • f — упаковывает в jar-файл, указанный параметром jarfile, вместо стандартного вывода.
  • inputfileDir1, inputfileDir2 — указывает входные файлы, которые должны быть объединены в jar-файл.

Теперь мы будем манифестировать файл, так как это специальный файл, который входит в ваш JAR-файл. Он имеет специальные метаданные, такие как имя основного класса, контроль версий, цифровая подпись автора, версия Java, используемая для связывания файла jar. Имя файла — «MANIFEST.MF», и он является частью подкаталога META-INF. Если этот файл не предоставляется во время объединения файла JAR, он создается автоматически. Когда мы извлекаем и открываем файл jar, мы можем просмотреть этот файл. Он имеет следующие детали

Manifest-Version: 1.0

Файл jar может запускаться приложением java напрямую, если он имеет файл манифеста с заголовком в качестве основного класса. Заголовок основного класса имеет полное имя класса, в котором есть функция main(). Указывает точку входа приложения.

Иллюстрация. Рассмотрите возможность создания файла JAR с файлом манифеста с именем helloworld.MF.

Manifest-Version : 1.0
Main-class : com.sample.test.HelloWorld

Пример:

Java




// Importing the package 
package com.sample.test;
  
// Main class
public class HelloWorld {
  
    // Main driver method
    public static void main(String[] args)
    {
  
        // Print statements only
        System.out.println("Welcome to helloworld");
        System.out.println("Jar file to be created");
    }
}

Keep a note here m indicates the manifest file to be included while bundling into a jar file

Выход:

Note: Here we compile the java file ‘HelloWorld.java’ using javac command. This command compiles the .java file and creates a class file HelloWorld.class. We then create the jar file helloworld.jar using jar command.

Наконец, теперь при запуске файла JAR мы используем приведенную ниже команду для запуска созданного файла jar. Когда мы запускаем jar-файл, класс Helloworld с main() загружается JVM, и код выполняется.