Введение
В этом практическом занятии вы научитесь создавать и запускать JAR-файл на Java в системе Ubuntu. JAR - это сокращение от Java Archive. JAR-файлы содержат сжатые файлы Java-проекта, включая файлы.class и другие метаданные и ресурсы, необходимые для проекта. Мы рассмотрим, как создать JAR-файл и выполнить его из командной строки.
Создайте тестовый Java-файл
В этом шаге вы создадите файл Java с именем HelloWorld.java в каталоге ~/project. Содержимое файла HelloWorld.java должно быть следующим:
public class HelloWorld
{
public static void main(String args[])
{
System.out.print("\n\nHello World\n\n");
}
}
Мы будем использовать этот файл для создания JAR-файлов, которые мы запустим позже в рамках практического занятия.
Компилировать Java-файл
В этом шаге вы скомпилируете файл HelloWorld.java с использованием следующей команды javac:
javac ~/project/HelloWorld.java
Создать исполняемый JAR-файл
В этом шаге вы создадите исполняемый JAR-файл. исполняемый JAR-файл содержит манифестный файл, в то время как не исполняемый JAR-файл этого не содержит. Этот манифестный файл содержит имя класса, который должен быть выполнен при запуске JAR-файла. В системе Ubuntu вы можете создать исполняемый JAR-файл с этим манифестным файлом следующим образом:
Создайте файл с именем
ManifestFile.txtв каталоге~/projectи добавьте в файл следующее:Main-Class: HelloWorldСоздайте исполняемый JAR-файл с помощью следующей команды:
jar -cfm ~/project/HelloWorld.jar ~/project/ManifestFile.txt ~/project/HelloWorld.classФлаг-cиспользуется для создания архивного файла. Флаг-fиспользуется для указания имени файла. Флаг-mиспользуется для включения содержимого манифестного файла.
Создать неисполняемый JAR-файл
В этом шаге вы узнаете, как создать не исполняемый JAR-файл. Мы исключим флаг -m. Вам не нужно передавать имя манифестного файла в нашу команду. Вы можете создать не исполняемый JAR-файл с помощью следующей команды:
jar -cf ~/project/HelloWorldNonExec.jar ~/project/HelloWorld.class
Запустить исполняемый JAR-файл
В этом шаге вы узнаете, как запустить исполняемый JAR-файл, который вы создали на шаге 3. Вы можете запустить его с помощью следующей команды:
java -jar ~/project/HelloWorld.jar
Результатом выполнения команды будет:
Hello World
Запустить неисполняемый JAR-файл
В этом шаге вы узнаете, как запустить не исполняемый JAR-файл, который вы создали на шаге 4. Вы можете запустить его с помощью следующей команды:
java -cp ~/project/HelloWorldNonExec.jar HelloWorld
Результатом выполнения команды будет:
Hello World
Запуск JAR-файлов с аргументами командной строки
В этом шаге вы узнаете, как передавать аргументы командной строки при запуске JAR-файла.
Создайте новый Java-класс с именем
CommandLineArgs.javaв каталоге~/projectс кодом:public class CommandLineArgs { public static void main(String args[]) { for (String s : args) { System.out.println(s); } } }Скомпилируйте
CommandLineArgs.java:javac ~/project/CommandLineArgs.javaСоздайте исполняемый JAR-файл:
jar -cfm ~/project/CommandLineArgs.jar ~/project/ManifestFile.txt ~/project/CommandLineArgs.classЗапустите следующую команду, чтобы передать три аргумента командной строки:
java -jar ~/project/CommandLineArgs.jar "Welcome " "Back " User
Результатом выполнения команды будет:
Welcome
Back
User
Резюме
Поздравляем! Вы завершили лабораторную работу "Запуск JAR-файла из командной строки". Вы можете выполнить больше лабораторных работ в LabEx, чтобы улучшить свои навыки.



