Как за��устить JAR файл в командной строке: пошаговая инструкция для новичков
-
Запуск JAR файла в командной строке - это базовый навык для любого, кто работает с Java. Ты получишь готовые команды, разберешься с ошибками и научишься передавать аргументы. Это поможет обойти проблемы с двойным кликом и запустить приложение точно.
Зачем это нужно? JAR файлы часто используются для серверов, утилит и скриптов. Командная строка дает полный контроль: логи, параметры и отладку. Без нее многие программы просто не стартуют, особенно если нет графического интерфейса.
Проверка Java и базовая команда запуска
Сначала убедись, что Java установлена - без нее ничего не выйдет. Открой командную строку (cmd в Windows или terminal в Linux/Mac) и введи
java -version. Если увидишь версию вроде Java 8 или 17, все в порядке. Если нет - скачай JRE или JDK с официального сайта Oracle или OpenJDK.Базовая команда простая: перейди в папку с JAR файлом командой
cd путь_к_папкеи выполниjava -jar имя_файла.jar. Например, для файла MyApp.jar это будетjava -jar MyApp.jar. Программа запустится, и ты увидишь вывод в консоли. Если файл в другой папке, укажи полный путь:java -jar C:\Путь\к\MyApp.jar.Это работает, только если в JAR есть манифест с указанием Main-Class. Без него Java не поймет, с какого класса стартовать. Проверь манифест внутри JAR - открой его как архив и посмотри META-INF/MANIFEST.MF.
Вот основные шаги для старта:
- Проверь Java:
java -version - Перейди в папку:
cd C:\путь\к\jar - Запусти:
java -jar app.jar
Проблема Решение ‘java’ не найдена Установи Java и добавь в PATH No main manifest Добавь Main-Class в манифест ClassNotFound Проверь версию Java Передача аргументов и работа с параметрами
Многие JAR приложения ожидают аргументы - это строки, которые передаются после имени файла. Команда выглядит так:
java -jar app.jar arg1 arg2. Аргументы разделяются пробелами, и Java получает их в методе main как массив строк.Например, утилита для обработки файлов может принимать путь:
java -jar processor.jar input.txt output.txt. Первый arg - входной файл, второй - выходной. Если аргумент содержит пробелы, заключи в кавычки:java -jar app.jar "мой файл.txt". Это предотвратит разбор на части.Параметры JVM тоже полезны:
-Xmx1024mдля увеличения памяти или-Dproperty=valueдля системных свойств. Полная команда:java -Xmx2g -jar app.jar arg1. Не забывай, что JVM параметры идут перед -jar.Список частых аргументов:
- Аргументы приложения: После .jar, разделены пробелами
- JVM опции:
-cpдля classpath,-versionдля проверки - Кавычки для путей: Если пробелы в имени файла
Пример команды Что делает java -jar app.jar hello Передает ‘hello’ как arg java -Xmx1g -jar server.jar Увеличивает heap до 1GB java -jar app.jar "C:\My Folder" Обрабатывает путь с пробелом Распространенные ошибки и их исправление
Ошибка ‘Unable to access jarfile’ значит, что файл не найден - проверь путь и имя. Используй
dirв Windows илиlsв Linux, чтобы убедиться. Если ‘Error: Could not find or load main class’, проблема в манифесте или classpath.Для JAR без Main-Class стандартный запуск не сработает. Тогда используй
java -cp app.jar com.example.MainClass. Это загружает класс напрямую, обходя манифест. В Linux/Mac добавь#!/bin/bashв скрипт для удобства:java -jar $1.Еще одна засада - версия Java. Приложение на Java 17 не запустится на 8-й. Укажи конкретную:
C:\Program Files\Java\jdk-17\bin\java.exe -jar app.jar. Проверь совместимость заранее.Частые ошибки и фиксы:
- NoClassDefFoundError: Добавь зависимости в -cp
- OutOfMemory: Увеличь -Xmx
- Permission denied (Linux):
chmod +x app.jar
ОС Команда открытия терминала Windows Win+R, cmd Linux Ctrl+Alt+T Mac Cmd+Space, Terminal Работа с JAR в разных ОС и продвинутые фичи
В Windows используй cmd или PowerShell - команды одинаковые. В Linux/Mac отличия минимальны: пути с / вместо . Для фонового запуска в Linux:
java -jar app.jar &или nohup:nohup java -jar app.jar > output.log &.Создать исполняемый JAR просто: скомпилируй классы, создай манифест и собери
jar cfm app.jar manifest.mf *.class. Для Maven/Gradle используй плагины - они добавят Main-Class автоматически. Fat JAR с зависимостями решает проблемы с библиотеками.Проверь JAR на целостность:
jar tf app.jarпокажет содержимое. Это полезно перед запуском.Ключевые советы по ОС:
- Windows: Используй полный путь с \
- Linux/Mac: Абсолютные пути с /
- Фон: nohup или screen/tmux
Инструмент Назначение jar tf Просмотр содержимого java -cp Запуск без манифеста Maven shade Fat JAR с deps Итоги по инструментам и версии Java
Мы разобрали от проверки Java до фонового запуска - теперь ты можешь стартовать любой JAR. Осталось освоить classpath для сложных проектов с внешними библиотеками или Docker для контейнеризации.
Думай о версиях: приложение под Java 21 может требовать модульности. Экспериментируй с опциями вроде -verbose:class для отладки загрузки классов - это ускорит диагностику.
- Проверь Java:
© 2024 - 2026 ExLends, Inc. Все права защищены.