Как правильно компилировать с помощью cmd.exe?

Задам нубский вопрос: как компилировать через cmd.exe в моем случае программу? В файле MiniDuckSimulator нах-ся psvm. Где я вообще могу посмотреть, как правильно компилировать файлы в различных случаях, а то я не очень понимаю, когда использовать -cp, -sourcepath, -classpath и т.п. Мне очень хотелось бы разобраться вэтом вопросе и научиться архивировать, распаковывать через командную строку. Что можете посоветовать?
Отслеживать
задан 30 июн 2020 в 21:13
Александр Скворцов Александр Скворцов
123 1 1 серебряный знак 6 6 бронзовых знаков
На habr имеется неплохая статья.
30 июн 2020 в 21:25
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
Консольная утилита javac :
Используется для компиляции программы, основной опцией которой является:
- —source-path / -sourcepath — указывает на каталог, в котором находятся файлы исходного кода (для java — это файлы с расширением .java ):
- используется при компиляции исходников в байткод (в .class файлы);
Консольная утилита java :
Используется для запуска программы, основной опцией которой является:
- —class-path path / -classpath path / -cp — указывает на каталог, в котором находятся скомпилированные файлы ( .class ):
- используется при запуске программы (за счет интерпретации на стороне JVM файлов байткода, т.е. .class файлов).
Консольная утилита jar :
Используется для манипуляции с архивами (создания архивов, извлечение из них .class файлов, . ), основной опцией которой является:
- —create / -c — создание архива.
На изучение:
- статья на habr, посвященная вашему вопросу;
- официальная документация на консольную утилиту javac (в рамках JDK 11);
- официальная документация на консольную утилиту java (в рамках JDK 11);
- официальная документация на консольную утилиту jar (в рамках JDK 11).
#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.
public class Main < public static void main(String[] args) < System.out.println("Hello, World!"); >>Идем в папку, куда среда разработки сохранила проект. Я работаю в IntelliJIDEA, и мой проект лежит в C:\Users\имя пользователя\IdeaProjects\название проекта\src. Находим там наш файл Main.java. Консоль вызывается так: щелкаем правой клавишей мыши с зажатой клавишей Shift на пустом месте в папке, где лежит файл нашей программы, и выбираем пункт контекстного меню “Открыть окно команд”.
Для того, чтобы скомпилировать его нужно набрать в консоли команду javac и в качестве параметра передать имя нашего файла:javac Main.javaЭта команда вызовет компилятор, который создаст файл Main.class, содержащий скомпилированный код нашей java программы.
Чтобы запустить ее, нужно ввести команду java с именем класса (не файла!) в качестве параметра:
java Main.class //так неправильноjava Main //так правильноАргументы
В главном классе нашей программы есть метод public static void main(. ) , который в качестве аргумента принимает массив String[] args.
Массив строк в качестве аргумента можно передать в программу при запуске из командной строки .
Любой массив в Java имеет переменную длину, это число элементов в этом массиве.
Добавим такой код в класс Main.java:
public class Main < public static void main(String[] args) < for (int i = 0; i < args.length; i++) < System.out.println(args[i]); >> >И чтобы скомпилировать и запустить программу с аргументами, пишем в консоль:
javac Main.java java Main arg0 arg1 arg2Упражнение
Создайте программу, которая выводит аргументы, переданные при запуске, в одну строку.
Дополнительное чтение:
- Сборка и выполнение Java программ
- Исключения (Exception) и их обработка в Java
Как скомпилировать и запустить программу на Java?
В одной из предыдущих статей я уже рассказывал как начать писать программы на Java, но тогда, чтобы как можно быстрее показать Вам как просто можно начать писать на Java я использовал среду разработки NetBeans, но сейчас я хочу рассказать Вам как скомпилировать и запустить java-файл используя лишь инструменты стандартной поставки JDK.
Вы можете возразить мне, что дескать зачем это нужно, когда есть замечательные среды разработки, которые и ошибки исправят и знаки препинания где надо расставят. Но для новичков — это медвежья услуга. Все эти среды разработки являются удобными и мощными обертками над существующими инструментами. Поэтому чтобы стать профессионалом важно знать как это все работает под капотом. Впоследствии, когда вы уже хорошо разберетесь с тем как функционируют компоненты JDK, вам уже будет намного проще разобраться и со средами разработки.
В комплект средств разработки JDK входят две базовые программы, которые понадобятся нам, для того, чтобы скомпилировать — javac.exe и запустить — java.exe программу на Java. Эти консольные программы находятся в папке bin JDK. У меня этот путь следующий:
C:\Java\jdk1.8.0_91\bin\java.exe — java интерпритатор
C:\Java\jdk1.8.0_91\bin\javac.exe — java компиляторЧтобы у Вас была возможность скомпилировать и запустить Java программу эти консольные программы должны быть доступны в переменной среды PATH вашего ПК. Как добавить свой путь в эту переменную Вы можете найти в Интернете.
Итак, представим, что JDK мы установили, нужные пути прописали, теперь давайте создадим файл Java программы, который будет выводить некоторую надпись в консоль. Код класса должен лежать в файле HelloWorld.java в кодировке UTF-8.
class HelloWorld
public static void main(String[] args)
System.out.println(«Hello, Myrusakov.RU»);
>
>Компилируем файл так:
C:/> javac HelloWorld.java
Если ошибок нет, то на выходе Вы получите файл HelloWorld.class в той же папке. Запустить этот файл можно командой:
C:/> java HelloWorld
Во втором случае расширение класса указывать не нужно.
При компилировании, текст Java программы преобразуется в байт-код, понятный виртуальной машине Java. Байт-код — это такое промежуточное представление, которое может запускаться везде где есть исполняемая среда. В этом то и состоит мощь Java. Один раз написав и скомпилировав программу Вам уже не будет надобности думать, а запуститься ли она на другом компьютере, с другой операционной системой. Ваша Java программа будет работать везде, где есть виртуальная машина Java.
Таким образом мы написали программу на Java, скомпилировали ее и запустили. Конечно с помощью интегрированной среды разработки это можно было бы сделать куда быстрее и без лишних слов, как говориться, но знание базового процесса создания программ на Java, конечно необходимо. А для тех, кто хочет насколько это возможно быстро освоить Java у меня есть специальный видеокурс «Программирование на Java с Нуля до Гуру».


Создано 06.06.2019 10:26:37
- Михаил Русаков
Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!
Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновленияЕсли у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.
Порекомендуйте эту статью друзьям:
Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):
- Кнопка:
Она выглядит вот так: - Текстовая ссылка:
Она выглядит вот так: Как создать свой сайт - BB-код ссылки для форумов (например, можете поставить её в подписи):
Комментарии ( 0 ):
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.Copyright © 2010-2023 Русаков Михаил Юрьевич. Все права защищены.
Скомпилировать и запустить консольное приложение
Помогите скомпилировать консольное приложение
У меня есть программа из книги //Астрономия на персональном компьютере// (исходники на С++.Невозможно запустить консольное приложение
Проблема может даже очень тривиальная, но никак не могу въехать.. Ситуация одинаковая и с Билдером.
Запустить и скрыть консольное приложение
Всем привет. У меня есть функция для запуска программ function StartProccess(filepath: string;.Программно запустить консольное приложение
Помогите разобраться с кодом есть консольное приложение. Мне нужно чтоб его можно было запускать.Am I evil? Yes, I am!


18966 / 9661 / 2710
Регистрация: 21.10.2017
Сообщений: 21,466
Сообщение было отмечено Kukstyler как решение
Решение
Сообщение от Noob-IT 