Wyszukiwanie w witrynie

Jak utworzyć i wykonać plik .Jar w terminalu Linux


JAR (Java ARchive) to niezależny od platformy format pliku używany do agregowania wielu plików klas Java i powiązanych metadanych i zasobów, takich jak tekst, obrazy itp., w jednym pliku do dystrybucji.

Umożliwia środowiskom wykonawczym Java efektywne wdrożenie całej aplikacji w jednym pliku archiwum i zapewnia wiele korzyści, takich jak bezpieczeństwo, jej elementy można kompresować, skracając czas pobierania, umożliwia plombowanie pakietów i wersjonowanie, wspiera przenośność. Obsługuje również pakowanie rozszerzeń.

W tym artykule pokażemy, jak utworzyć prostą aplikację Java i spakować ją do pliku JAR oraz zademonstrujemy, jak uruchomić plik .jar z terminala Linux.

Aby to zrobić, musisz mieć zainstalowane narzędzie wiersza poleceń Java, aby uruchomić aplikację Java, oraz flagę -jar, aby uruchomić program zawarty w pliku JAR. Gdy używana jest ta flaga, określony plik JAR jest źródłem wszystkich klas użytkowników, a inne ustawienia ścieżki klas są ignorowane.

Jak utworzyć plik JAR w systemie Linux

1. Najpierw zacznij od napisania prostej klasy Java z główną metodą dla aplikacji o nazwie TecmintApp, w celach demonstracyjnych.

vim TecmintApp.java

Skopiuj i wklej poniższy kod do pliku TecmintApp.java.

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

Zapisz plik i zamknij go.

2. Następnie musimy skompilować i spakować klasę do pliku JAR przy użyciu narzędzi javac i jar jak pokazano.

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

3. Po utworzeniu pliku tecmintapp.jar możesz teraz wyciąć plik za pomocą polecenia java, jak pokazano.

java -jar tecmintapp.jar

no main manifest attribute, in tecmintapp.jar

W wynikach powyższego polecenia napotkaliśmy błąd. JVM (Wirtualna maszyna Java) nie mogła znaleźć naszego głównego atrybutu manifestu, dlatego nie mogła zlokalizować głównej klasy zawierającej główną metodę ( publiczna statyczna pusta główna (String[] args)).

Plik JAR powinien zawierać manifest zawierający linię w postaci Main-Class:classname, która definiuje klasę za pomocą metody main, która służy jako punkt wyjścia naszej aplikacji.

4. Aby naprawić powyższy błąd, będziemy musieli zaktualizować plik JAR tak, aby zawierał atrybut manifestu wraz z naszym kodem. Utwórzmy plik MANIFEST.MF.

vim MANIFEST.MF

Skopiuj i wklej następujący wiersz do pliku MANIFEST.MF.

Main-Class:  TecmintApp

Zapisz plik i dodajmy plik MANIFEST.MF do naszego tecmintapp.jar za pomocą poniższego polecenia.

jar cvmf MANIFEST.MF tecmintapp.jar TecmintApp.class

5. Na koniec, gdy ponownie uruchomimy plik JAR, powinien on dać oczekiwany wynik, jak pokazano na wyjściu.

java -jar tecmintapp.jar

Just executed TecmintApp!

Więcej informacji znajdziesz na stronach podręcznika poleceń java, javac i jar.

man java
man javac
man jar

To wszystko! W tym krótkim artykule wyjaśniliśmy, jak utworzyć prostą aplikację Java i spakować ją do pliku JAR oraz zademonstrowaliśmy, jak uruchomić plik .jar z terminala. Jeśli masz jakieś pytania lub dodatkowe pomysły, którymi chcesz się podzielić, skorzystaj z poniższego formularza opinii.