How to Run a Simple Java Application From the Command Prompt on Windows
![]()
How to start developing Java applications on Windows?
To run Java applications from the command line on Windows, JDK must be installed on your machine. This process is described here.
After installation process, you can write simple Java code like below.
- For that, you should create a HelloWorld.java file on your disk.
- You can open this file with Notepad++. After opened it, write the following code in your file.
3. Open the command prompt with writing Windows Search Box Command Prompt.
4. Use the cd command to change your working directory to the directory containing your Java program.
#8. Компиляция и выполнение java программы с командной строки
Продолжаем курс программирования java для android-разработчиков. Данный урок научит вас запускать java программы из командной строки, для общего понимания процесса компиляции и запуска программ на языке java.
После создания простого приложения, которое выводит что-то на экран, вы должны компилировать ваш код и запустить его.
Независимо от того, какую операционную систему вы используете, Linux, Mac или Windows, если на вашем компьютере установлен JDK (Java Development Kit), вы можете в консоли набрать следующие команды чтобы скомпилировать и запустить программу:
- javac (или javac.exe)
- java (или java.exe)
В первом случае будет вызван компилятор javac.exe, а во втором случае – запускалка java.exe, которая стартует нашу программу. Эти файлы лежат в папке bin вашего JDK.
Рассмотрим на примере. Вспомним код из первого урока – создадим файл с названием Main.java.
Идем в папку, куда среда разработки сохранила проект. Я работаю в IntelliJIDEA, и мой проект лежит в C:\Users\имя пользователя\IdeaProjects\название проекта\src. Находим там наш файл Main.java. Консоль вызывается так: щелкаем правой клавишей мыши с зажатой клавишей Shift на пустом месте в папке, где лежит файл нашей программы, и выбираем пункт контекстного меню “Открыть окно команд”.
Для того, чтобы скомпилировать его нужно набрать в консоли команду javac и в качестве параметра передать имя нашего файла:
Эта команда вызовет компилятор, который создаст файл Main.class, содержащий скомпилированный код нашей java программы.
Чтобы запустить ее, нужно ввести команду java с именем класса (не файла!) в качестве параметра:
Аргументы
В главном классе нашей программы есть метод public static void main(. ) , который в качестве аргумента принимает массив String[] args.
Массив строк в качестве аргумента можно передать в программу при запуске из командной строки .
Любой массив в Java имеет переменную длину, это число элементов в этом массиве.
Добавим такой код в класс Main.java:
И чтобы скомпилировать и запустить программу с аргументами, пишем в консоль:
Упражнение
Создайте программу, которая выводит аргументы, переданные при запуске, в одну строку.
Как запустить джава файл через командную строку

Итак, после установки JDK создадим первое приложение на языке Java. Что необходимо для создания программы на Java? Прежде всего нам надо написать код программы, и для этого нужен текстовый редактор. Можно использовать любой текстовый редактор, например, Notepad++.
И чтобы превратить код программы в исполняемое приложение необходим компилятор. После установки JDK все файлы по умолчанию помещаются в каталог C:\Program Files\Java\jdk-[номер_версии] (при использовании ОС Windows). В моем случае это каталог C:\Program Files\Java\jdk-19 . Если мы откроем в нем подкаталог bin , то мы сможем увидеть в нем ряд утилит. Нас прежде всего интересует утилита компилятора javac . Чтобы скомпилировать класс программы, нам надо передать ее код этому компилятору.

Также следует отметить другую утилиту из этой папки — java.exe, которая позволяет запускать скомпилированную программу.
Итак, создадим на жестком диске какой-нибудь каталог, в котором будут располагаться файлы с исходным кодом на языке Java. Допустим, это будет каталог C:/Java . Затем создадим в этом каталоге текстовый файл, который переименуем в Program.java . Откроем этот файл в любом текстовом редакторе и наберем в нем следующую программу:
Java является объектно-ориентированным языком, поэтому вся программа представляется в виде набора взаимодействующих классов. В данном случае определен один класс Program.
При определении класса вначале идет модификатор доступа public , который указывает, что данный класс будет доступен всем, то есть мы сможем его запустить из командной строки. Далее идет ключевое слово class , а затем название класса. То есть класс называется Program. После названия в фигурных скобках расположено содержимое класса.
Класс может содержать различные переменные и методы. В данном случае у нас объявлен один метод main . Это главный метод в любой программе на Java, он является входной точкой программы и с него начинается все управление. Он обязательно должен присутствовать в программе.
Метод main также имеет модификатор public . Слово static указывает, что метод main — статический, а слово void — что он не возвращает никакого значения. Позже мы подробнее разберем, что все это значит.
Далее в скобках у нас идут параметры метода — String args[] — это массив args, который хранит значения типа String , то есть строки. В данном случае ни нам пока не нужны, но в реальной программе это те строковые параметры, которые передаются при запуске программы из командной строки.
После списка параметров в фигурных скобках идет тело метода — это собственно те инструкции, которые и будет выполнять метод. В данном случае фактически определени определена только одна инструкция — вывод на консоль некоторой строки. Для вывода на консоль используется встроенный метод System.out.println() . В этот метод передается выводимая строка. Каждая инструкция завершается точкой с запятой.
Теперь скомпилируем написанную программу. Откроем командную строку (в Windows) или терминал в Linux/MacOS и введем там соответствующие команды. Первым делом перейдем в каталог, где лежит наш файл с программой с помощью команды:
В данном случае файл находится в каталоге C:\Java.

Затем cкомпилируем программу с помощью команды
Обратите внимание, что весь путь к компилятору javac берется в кавычки, а затем через пробел идет название нашего файла, который содержит класс программы.
После этого программа компилируется в байт-код, и в каталоге C:\Java можно будет найти новый файл Program.class . Это и будет файл с байт-кодом программы. Теперь нам надо его запустить с помощью утилиты java:
Здесь уже расширение у файла не надо использовать.
Для ОС Windows весь процесс будет выглядеть следующим образом:

Добавление java в переменную Path
Для компиляции приходится вводить полный путь к комилятору javac, что может быть сопряжено с ошибками при вводе, да и каждый раз вводить полный путь тоже неудобно. Чтобы в дальнейшем облегчить работу, добавим путь к JDK в переменную PATH в переменных среды. Если мы работаем в Windows, то для добавления переменной среды через поиск найдем найдем параметр Изменение системных переменных среды . Для этого введем в поле поиска «Изменение системных переменных среды»:

Выберем пункт Изменение системных переменных среды . И сначала нам откроется окно «Свойства системы», где нажмем на кнопку Переменные среды :

Затем нам откроется окно, где мы можем увидеть все переменные среды. (Также можно перейти через Параметры и пункт Система ->Дополнительные параметры системы ->Переменные среды )
Здесь нам нужно исправить системную переменную Path . Для этого выделим ее и нажмем на кнопку «Изменить»:

В эту переменную Path нам надо добавить путь к инструментам JDK. И тут есть два момента. Во-первых, при установке jdk по умолчанию ряд утилит также устанавливаются в папку C:\Program Files\Common Files\Oracle\Java\javapath . В том числе это такие файлы как java.exe и javac.exe. И путь к этой папке по умолчанию добавляется в перемнную Path. То есть мы можем использовать этот путь.
Второй момент — в последних сборках Windows компания Microsoft также устанавливает свои сборки JDK, точнее OpenJDK, которые также по умолчанию добавляются в переменную Path и которые мы также можем использовать. Но у этих сборок есть большой минус — они применяют одну из прошлых версий JDK (обычно это LTS-сборки). Например, в моем случае это 11-я версия, но текущая версия может отличаться (например, на написание данной статьи текущей являлась версия 19).
Чтобы использовать последнюю версию среди путей в переменной Path убедимся, что путь C:\Program Files\Common Files\Oracle\Java\javapath располагается выше путей к сборкам JDK от Microsoft. Для перемещения определенного пути вверх среди переменных среды можно использовать кнопку «Вверх:

Также можно напрямую использовать путь к JDK.

Для создания новой переменной надо нажать на кнопку «Создать» и ввести в новое поле путь «C:\Program Files\Java\jdk-[номер_версии]\bin». Но опять же его следуется с помощью кнопки Вверх поместить над путями к OpenJDK от Microsoft.
После установки переменной Path перейдем к командной строке/терминалу (в более старых версиях Windows может потребоваться перезауск командной строки) и для проверки версии введем команду
Консоль нам должна в ответ ввести номер только что установленной версии JDK (в моем случае 19-й версии):
Как запустить java-приложение из командной строки?
Для примера я наваял небольшую програмку, которая должна вычислять площадь круга по заданному радиусу. Программа содержит два класса: GeometryWF (главный) и Circle. Предполагается создать консольное приложение. Запуск приложения java должен производиться из командной строки.
package geometrywf;
public class GeometryWF <
public static void main(String[] args) <
try <
if (args[0].equals(«circle»)) <
Circle c = new Circle(Double.parseDouble(args[1]));
System.out.println(«Circle perimetre: «+c.perimeter());
System.out.println(«Circle aria: «+c.area());
>
>
catch(ArrayIndexOutOfBoundsException e) <
System.out.println(«Ошибочные входные параметры!»);
>
>
>
package geometrywf;
public class Circle <
public double r = 0;
public Circle(double r) <
this.r = r;
>
public double area() <
return(Math.PI*r*r);
>
public double perimeter() <
return(2*Math.PI*r);
>
>
Далее нужно собрать проект. Для разработки я использую NetBeans IDE. Соответственно сборку осуществляю нажатем сочетания «Shift+F11» («Очистить и собрать проект»). На выходе получаю готовый jar-файл
(C:\Users\Иван\Documents\NetBeansProjects\GeometryWF\dist\GeometryWF.jar).
Запуск из командной строки.
Прежде, чем запускать командную строку, кликаем правой кнопкой мыши по значку «Мой компьютер» и открываем «Свойства». Переходим в «Дополнительные параметы системы»->»Переменные среды». В разделе «Системные переменные» необходимо создать новую переменную «JAVA_HOME» со значением » » (у меня это «C:\glassfish3\jdk\bin»). Этот же путь нужно прописать в уе существующую переменную Path после точки с запятой. Все сохраняем и запускаем командную строку.
Меняем директорию на папку с jar-файлом при помощи команды CHDIR:
C:\Users\Иван>CHDIR C:\Users\Иван\Documents\NetBeansProjects\GeometryWF\dist\
Выполняем запуск приложения java из командной строки при помощи команды «java -jar .
C:\Users\Иван\Documents\NetBeansProjects\GeometryWF\dist>java -jar GeometryWF.jar circle 9
На выходе получаем:
Circle perimetre: 56.548667764616276
Circle square: 254.46900494077323