Поиск по сайту:

Как создать и выполнить файл .Jar в терминале Linux


JAR (Java ARchive) – это независимый от платформы формат файла, используемый для объединения множества файлов классов Java и связанных с ними метаданных и ресурсов, таких как текст, изображения и т. д., в один файл. для распространения.

Он позволяет средам выполнения Java эффективно развертывать все приложение в одном архивном файле и предоставляет множество преимуществ, таких как безопасность, его элементы могут быть сжаты, что сокращает время загрузки, обеспечивает запечатывание пакетов и управление версиями, поддерживает переносимость. Он также поддерживает упаковку для расширений.

В этой статье мы покажем, как создать простое приложение Java и объединить его в файл JAR, а также покажем, как выполнить файл .jar из терминала Linux.

Для этого у вас должен быть установлен инструмент командной строки Java для запуска приложения Java и флаг -jar для выполнения программы, инкапсулированной в файл JAR. При использовании этого флага указанный файл JAR является источником всех пользовательских классов, а другие настройки пути к классам игнорируются.

Как создать файл JAR в Linux

1. Сначала начните с написания простого класса Java с основным методом для приложения под названием TecmintApp в демонстрационных целях.

vim TecmintApp.java

Скопируйте и вставьте следующий код в файл TecmintApp.java.

public class TecmintApp {
	public static void main(String[] args){
		System.out.println(" Just executed TecmintApp! ");
	}
}

Сохраните файл и закройте его.

2. Далее нам нужно скомпилировать и упаковать класс в файл JAR с помощью утилит javac и jar. как показано.

javac -d . TecmintApp.java
ls
jar cvf tecmintapp.jar TecmintApp.class
ls

3. После создания tecmintapp.jar вы можете запустить файл с помощью команды java, как показано.

java -jar tecmintapp.jar

no main manifest attribute, in tecmintapp.jar

В результате выполнения приведенной выше команды мы столкнулись с ошибкой. JVM (Виртуальная машина Java) не смогла найти наш основной атрибут манифеста, поэтому она не смогла найти основной класс, содержащий основной метод ( public static void main (String[] args)).

Файл JAR должен иметь манифест, содержащий строку в форме Main-Class:classname, определяющую класс с основным методом, который служит отправной точкой нашего приложения.

4. Чтобы исправить вышеуказанную ошибку, нам нужно обновить файл JAR, включив в него атрибут манифеста вместе с нашим кодом. Давайте создадим файл MANIFEST.MF.

vim MANIFEST.MF

Скопируйте и вставьте следующую строку в файл MANIFEST.MF.

Main-Class:  TecmintApp

Сохраните файл и добавим файл MANIFEST.MF в наш tecmintapp.jar, используя следующую команду.

jar cvmf MANIFEST.MF tecmintapp.jar TecmintApp.class

5. Наконец, когда мы снова запустили файл JAR, он должен дать ожидаемый результат, как показано на выходе.

java -jar tecmintapp.jar

Just executed TecmintApp!

Дополнительную информацию см. на страницах руководства по командам java, javac и jar.

man java
man javac
man jar

Вот и все! В этой короткой статье мы объяснили, как создать простое приложение Java и объединить его в файл JAR, а также продемонстрировали, как выполнить файл .jar с терминала. Если у вас есть какие-либо вопросы или дополнительные идеи, которыми вы можете поделиться, воспользуйтесь формой обратной связи ниже.