Как создать и выполнить файл .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 с терминала. Если у вас есть какие-либо вопросы или дополнительные идеи, которыми вы можете поделиться, воспользуйтесь формой обратной связи ниже.