• ,

Создание и запуск первого Java-приложения (часть 2)

Итак, установка JDK завершена, пакет создан, класс создан, время приступить к собственно написанию кода…

После создания класса соответствующий ему файл HelloWorld.java открывается в редакторе.



Обратите внимание на оператор пакета в начале файла, а также объявление класса. При создании класса, IntelliJ IDEA использует файл шаблона для класса Java. (IntelliJ IDEA предоставляет ряд предопределенных шаблонов для создания файлов различных типов. Дополнительные сведения см. в разделе File Templates в IntelliJ IDEA Help.)

Также обратите внимание на желтую лампочку. Эта лампа указывает, что в IntelliJ IDEA есть предложения для текущего контекста. Нажмите на лампочку или ALT + ENTER, чтобы увидеть список доступных действий.



В данный момент мы не собираемся выполнять действия, предложенные IntelliJ IDEA (такие действия называются intention actions — «действия-намерения», подробнее о них см. в разделе Intention Actions в IntelliJ IDEA Help.) Заметим, однако, что эта функция IntelliJ IDEA иногда может быть очень полезной.

Наконец, есть маркеры сворачивания кода рядом с комментариями (и ). Нажмите одну из них, чтобы свернуть соответствующий блок, если действительно не хотите видеть эту часть кода в данный момент. (Вы можете также поместить курсор в коде блока, а затем нажать сочетание клавиш CTRL + NumPad- или CTRL + NumPad+, чтобы свернуть или развернуть блок. Получить дополнительную информацию по сворачиванию кода можно в разделе Code Folding в IntelliJ IDEA Help.)



Написание кода для класса HelloWorld

Итак, наконец этот момент настал. Код в конечном состоянии (как вы, наверное, знаете) будет выглядеть следующим образом:
package com.example.helloworld;

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

Объявление пакета и класса уже есть, теперь добавим недостающие пару строк.
Поместите курсор в конец текущей строки, после знака {, и нажмите ENTER, чтобы начать новую строку (На самом деле, можно сделать проще: независимо от позиции курсора, нажатие клавиш SHIFT + ENTER начинает новую строку, сохраняя предыдущие строки без изменений).



Использование активного шаблона для метода Main().

Строку
public static void main(String[] args) {}

вполне можно и просто напечатать. Однако рекомендовал бы вам другой метод. Печатаем:
psvm



и нажимаем TAB. В результате получаем:



В данном случае мы использовали активный шаблон генерации кода объекта.
Активный шаблон имеет аббревиатуру- строку, определяющую шаблон (PSVM = public static void main в этом примере) и клавишу для вставки фрагмента в код (TAB в данном случае). Дополнительную информацию можно найти в разделе Live Templates в IntelliJ IDEA Help.

Использование автоматического завершения кода.

Теперь пришло время добавить оставшиеся строки кода (System.out.println («Hello, World!»);). Мы сделаем это с помощью операции автоматического завершения кода в IntelliJ IDEA. Печатаем:
Sy

Автоматическое завершение кода предлагает нам варианты:



В данном случае вариант только один: System (java.lang). Нажимаем ENTER, чтобы выбрать его.



Печатаем точку и букву «о»:


Функция автоматического завершения кода снова предлагает нам варианты:



Нажимаем ENTER, чтобы выбрать out.



Печатаем:
.printl

Обратите внимание, как изменяется список вариантов в процессе ввода. Метод, который мы ищем — Println (String х).



Выбираем println(String x). Код принимает следующий вид:



Печатаем кавычки:
"

Как видите, вторые кавычки появляются автоматически, а курсор перемещается в место, где должен быть наш текст. Печатаем:
Hello, World!



Этап написания кода завершен.

Использование активного шаблона для Println ()

К слову, мы могли бы выполнить вызов Println () с помощью активного шаблона. Аббревиатура для соответствующего шаблона- Sout. а клавиша активации- TAB. Вы можете попробовать использовать этот шаблон в качестве дополнительного упражнения. (Если вы думаете, что с вас достаточно активных шаблоны, перейдите по созданию проекта).

Удалите строку
System.out.println("Hello, World!");

Печатаем
sout

и нажимаем TAB. Строка
System.out.println();

добавляется автоматически, и курсор оказывается в скобках. Нам остается напечатать
Hello, World!


Строительство проекта

Опции построения проекта или его части доступны в меню Build.



Многие из этих опций доступны также в контекстном меню в окне Project и в редакторе для HelloWorld.java.
Также есть значок на панели инструментов, которая соответствует команде Make Project ().
Теперь давайте построим проект.

Строительство в данном конкретном случае- просто компиляция исходного файла Java в файл класса. Таким образом, любой из вариантов в меню Build (Make Project, Make Module ‘HelloWorld’, или Compile ‘HelloWorld.java’) могут быть использованы для этой цели.

Давайте попробуем построить проект. (Клавиатурный эквивалент для этой команды CTRL + F9. Обратите внимание, что эта ссылка отображается прямо в меню как полезный намек.)
Подождите, пока IntelliJ IDEA завершит компиляцию. Когда этот процесс будет завершен, соответствующая информация отображается в строке состояния.



Теперь, если вы перейдете в папку модуля вывода (по умолчанию это папка \out\production\, в нашем случае, и папка и называются HelloWorld), вы увидите там структуру папок для пакета com.example.helloworld и HelloWorld.class файл в папке HelloWorld.



Если вы хотите разобраться в строительстве приложения лучше, обратитесь к разделам IntelliJ IDEA Help: Build Process, Compilation Types, Configuring Module Compiler Output и Configuring Project Compiler Output.

Запуск приложения.

Приложение IntelliJ IDEA выполняются согласно тому, что называется конфигурацией запуска/отладки (Run/Debug). Такая конфигурация, как правило, должна быть создана до запуска приложения. (Более подробную информацию см. в разделе Running, Debugging and Testing в IntelliJ IDEA Help.)

В случае класса HelloWorld, нет необходимости создавать конфигурацию запуска и отладки заранее.Класс содержит метод main(). Такие классы могут быть запущены сразу, прямо из редактора. Для этой цели существует команда Run ‘<ClаssName>.main()’ в контекстном меню для класса.
Таким образом, чтобы запустить класс, щелкните правой кнопкой мыши где-нибудь в области редактирования и выберите Run 'HellоWorld.main ()'.



В результате выполнения команды Run появляется окно в нижней части экрана. Оно окна отвечает за отображение всех выходных данных, указанных в конфигурации команды. (Более подробную информацию см. в разделе Run Tool Window, в справке IntelliJ IDEA.)



Первая строка в окне содержит командную строку IntelliJ IDEA, используемую для запуска класса, включая все опции и аргументы. Последняя строка показывает, что процесс завершился нормально, бесконечных циклов не произошло. И, наконец, вы видите вывод программы Hello, World! между этими двумя строками.

На этом этапе наше упражнение закончено. Однако, есть заключительные замечания, которые стоит сделать, связанные с запуском приложений IntelliJ IDEA:

  • Варианты для запуска приложений можно найти в главном меню.



Большинство имен команд в этом меню говорят сами за себя. Опция редактирования конфигурации запуска открывает диалоговое окно для создания и редактирования конфигураций запуска. Также отметим, что сочетания клавиш (см. справа в меню) доступны для большинства команд.

  • На главной панели инструментов есть область, содержащая кнопки, связанные с запуском приложений. К ним относятся кнопки выбора конфигурации запуска и отладки (Run/Debug) и значки для запуска приложений в различных режимах.



Выбор конфигурации позволяет выбрать Run/Debug конфигурации, которые вы хотите использовать. Он также позволяет получить доступ к настройке Run/Debug конфигурации (Edit Configurations) и выполнения других задач, связанных с работой функций Run/Debug.

(В результате запуска класса HelloWorld, Run/Debug конфигурация HelloWorld была сохранена как временная. Теперь вы можете сохранить эту конфигурацию запуска (Save Configuration «HelloWorld»), чтобы превратить ее в постоянную.)



  • Варианты для запуска приложений и для работы с Run/Debug конфигурациями, в случае необходимости, также присутствуют как команды контекстного меню в окне Project.

Исходная статья: Creating and running your first Java application
Переведено и озвучено: Ve4niY

14 комментариев

iruslan
а нет активного шаблона на такую констрикцию;) for(int i = 0; i<(чегото).length; i++){ } ??
IvanDurov
GabbazovRuslan
Подскажите пожалуйста: почему если у меня есть не решенный проект (задача не компилирующаяся, если это важно) при запуске (RUN) следующей задачи иногда (не всегда кажется но у меня сейчас как минимум второй раз такой случай) она не запускается? а вместо нее запускается предыдущая и выдает мне все свои ошибки компиляции. Я пробую и сохраняться и запускать в обычном режиме и дебаг. Метод мэйн в запускаемой задаче есть.
?
KeLsTaR
Дело в том, что ты работаешь в рамках одного проекта — JavaRushHomeWork соответственно когда ты откомпилировал и запустил какой-либо класс с маином, он устанавливается в качестве того майна, который будет выполняться при нажатии на кнопку run везде в этом проекте. Справа от кнопки Run можно выбрать какой именно класс запускать (хотя это тебе наверное мало чем поможет, так как почти все классы которые надо запускать называются Solution), но метод чтобы тебе помочь у меня есть: Просто когда хочешь запустить свою программу нажимай Crtl+Shift+F10 и будет компилироваться и запускаться именно текущая открытая вкладка, я всегда так делаю)
GabbazovRuslan
СПАСИБО! Все понял.
Wolkill
Crtl+Shift+F10 не очень помогает, во всяком случае в версии 13.1.3, всё равно запускается класс, который ещё не дописан и мешает запуститься тому, кому нужно, помогает «выделить весь код в проблемном классе» и Ctrl+Shift+/(комментарий ниже), я новичок, новые задачи стараюсь выполнять используя опыт старых, и из-за этого момента я не мог экспериментировать с достаточной степенью свободы, спасибо, Diana, твой совет очень помог.
Diana
Если в проекте есть хотя бы один класс, который не компилируется, то что-либо запустить не удастся.
ВСЕ классы в проекте (у нас JavaRushHomeWork) должны компилироваться.
На крайний случай можно выделить кусок кода, который не компилируется, и закомментировать его Ctrl+Shift+/
GabbazovRuslan
И вам тоже большое спасибо!
Fox2k
Diana, огромное спасибо, уверен многие бьются с этой проблемой
antonchar
У меня при записи Sout + TAB вылезает StringIndexOutOfBoundsException. Как изменить этот шаблон на вывод в консоль?
antonchar
Все, разобрался sout с маленькой буквы.
braker07
Не могу настроить IDEA на нормальную работу в Windows 10. После настройки SDK в IDEA все классы в таком виде
.
Пункта Run вообще нет.
Плагин не может авторизироваться.
Помогите!
eniqen
jdk установи
toxik
у меня нет лампочки, как исправить?
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.