Разработка общих приложений Java

В следующем кратком учебном курсе приведено пошаговое описание некоторых базовых шагов по разработке приложений Java SE в NetBeans IDE. Данный учебный курс предполагает наличие базовых знаний о разработке приложений на Java. Здесь представлены некоторые возможности среды IDE, которые позволяют упростить процесс разработки приложений.

В рамках данного руководства будет создано приложение для получения из нескольких исходных слов одного слова, содержащего по одной букве из каждого исходного слова. Про такое слово можно сказать, что оно имеет форму акронима (acrostic).

Изучение материала, представленного в этом руководстве, занимает приблизительно 30 минут. Если требуется более быстрое учебное руководство "Привет, мир" см. раздел Быстрое учебное руководство по Java IDE NetBeans.

Содержание

Содержимое на этой странице применимо к IDE NetBeans 7.4 и 8.0

Для работы с этим учебным курсом требуются программное обеспечение и материалы, перечисленные в таблице ниже.

Программное обеспечение или материал Требуемая версия
IDE NetBeans 7.4 или 8.0
Комплект для разработчика на языке Java (JDK) 6, 7 или 8

Настройка проектов

Создаваемое приложение будет содержать два проекта:

  • проект библиотеки классов Java, в котором будет создан служебный класс;
  • проект приложения Java с главным классом, который реализует метод из служебного класса проекта библиотеки.

После создания проектов проект библиотеки будет добавлен к пути к классам проекта приложения. Затем должен быть написан код приложения. В проект библиотеки будет включен служебный класс с методом acrostic. Метод acrostic использует в качестве параметра массив слов, а затем на основе этих слов создает акроним. Проект "MyApp" будет содержать главный класс, который вызывает метод acrostic и передает слова, введенные в качестве параметра при выполнении приложения.

Примечание. Строго говоря, для такого простого приложения не требуется два проекта. В этом руководстве на примере двух проектов рассматриваются функции, которые могут потребоваться при создании более сложных приложений.

Создание проекта библиотеки классов Java

  1. Выберите команду "Файл" > "Создать проект" (CTRL+SHIFT+N). В области "Категории" выберите "Java". В области "Проекты" выберите "Библиотека классов Java". Нажмите кнопку "Далее".
  2. В поле "Имя проекта" введите MyLib. В поле "Местоположение проекта" укажите любой каталог на компьютере. Всюду далее в настоящем учебном пособии это будет каталог с именем NetBeansProjects.

    Примечание. Путь, указанный выше, должен отображаться как следующий в поле папки проекта мастера: /NetBeansProjects/MyLib/

  3. Установите флажок "Использовать отдельную папку для хранения библиотек" и укажите местоположение папки библиотек (необязательно). Дополнительная информация об этой команде приведена в статье Предоставление доступа к библиотеке другим пользователям в документе Разработка приложений с помощью NetBeans IDE.
  4. Нажмите кнопку 'Готово'. Проект "MyLib" будет открыт как в окне "Проекты", так и в окне "Файлы".

Создание проекта приложения Java

  1. Выберите команду "Файл" > "Новый проект". В области "Категории" выберите "Java". В области "Проекты" выберите "Приложение Java". Нажмите кнопку "Далее".
  2. В поле "Имя проекта" введите MyApp. Убедитесь, что в качестве местоположения проекта указано NetBeansProjects.
  3. Установите флажок "Использовать отдельную папку для хранения библиотек" (необязательно).
  4. В качестве главного класса введите acrostic.Main.
  5. Убедитесь, что установлен флажок 'Создать основной класс'.
  6. Нажмите кнопку 'Готово'. Проект MyApp отображается в окне 'Проект' и Main.java открывается в редакторе исходного кода.

Настройка пути к классам для компиляции

Поскольку проект "MyApp" будет зависеть от класса в проекте "MyLib", необходимо добавить "MyLib" в путь к классам, указанный в "MyApp". Это также обеспечит возможность обращения классов в проекте "MyApp" к классам в проекте "MyLib" без ошибок компиляции. Кроме того, это позволит использовать функцию автозавершения кода в проекте "MyApp" для подстановки исходного кода на базе проекта "MyLib". В среде IDE путь к классам визуально представлен узлом "Библиотеки".

Для добавления служебных классов библиотеки в путь к классам проекта:

  1. В окне 'Проекты', щелкните правой кнопкой мыши узел Libraries для проекта MyApp и выберите 'Добавить проект', как показано на рисунке ниже.

    Изображение, на котором отображается команда 'Добавить проект', предлагаемая при щелчке правой кнопкой мыши узла проекта.

  2. Перейдите к NetBeansProjects/ и выберите папку проекта MyLib. На экране "Файлы JAR проекта" отображаются архивы JAR, которые можно добавить к проекту. Учтите, что архив JAR для проекта "MyLib" отображается даже в том случае, если он фактически еще не создан. Этот архив JAR будет создан в процессе сборки и выполнения проекта "MyApp".
  3. Нажмите кнопку "Добавить файлы JAR проекта".
  4. Разверните узел "Библиотеки". Архив JAR проекта "MyLib" добавлен в путь к классам проекта "MyApp".

Создание и изменение исходного кода Java

Теперь необходимо создать пакет Java и добавить метод, который будет использоваться для создания акронима. После этого требуется реализовать метод acrostic в классе Main.

Создание пакета Java и файла класса

  1. Щелкните правой кнопкой мыши узел проекта "MyLib" и выберите "Создать > Класс Java". Введите имя нового класса LibClass, затем введите org.me.mylib в поле "Пакет" и нажмите кнопку "Готово". LibClass.java открывается в редакторе исходного кода.
  2. В LibClass.java установите курсор на строке после объявления класса (public class LibClass {).
  3. Введите или вставьте следующий код метода:
        public static String acrostic(String[] args) {
            StringBuffer b = new StringBuffer();
            for (int i = 0; i < args.length; i++) {
                if (args[i].length() > i) {
                    b.append(args[i].charAt(i));
                } else {
                    b.append('?');
                }
            }
            return b.toString();
                    }
  4. Если вставленный код отформатирован неправильно, нажмите сочетание клавиш ALT+SHIFT+F для переформатирования всего файла.
  5. Для сохранения файла нажмите сочетание клавиш CTRL+S.

Изменение файла Java

Теперь добавим код в Main.java. При этом в редакторе исходного кода отображаются функции автозавершения кода и шаблона кода (сокращения).

  1. Перейдите на вкладку Main.java в редакторе исходного кода. Если он еще не открыт, разверните узел "MyApp > Исходные файлы > acrostic" в окне "Проекты" и дважды щелкните Main.java.
  2. Удалите комментарий // TODO code application logic here в методе main.
  3. Вместо этого комментария введите следующее:
    String result = Li

    Установите курсор сразу же после Li. Теперь можно воспользоваться функцией автозавершения кода для подстановки LibClass вместо Li.

  4. Нажмите сочетание клавиш CTRL+ПРОБЕЛ для вызова окна автозавершения кода.

    Появится небольшой список допустимых подстановок. Однако требуемого класса LibClass там может не оказаться.

  5. Для просмотра расширенного списка возможных соответствий еще раз нажмите сочетание клавиш CTRL+ПРОБЕЛ.

    Класс LibClass должен находиться в этом списке.

  6. Выберите LibClass и нажмите ENTER. Оставшаяся часть имени класса будет автоматически подставлена в код средой IDE. Кроме того, для этого класса также автоматически создается оператор импорта.

    Примечание. В IDE также открывается поле над полем завершения кода, в котором отображаются данные Javadoc для выбранного класса или пакета. Поскольку для этого пакета документация Javadoc отсутствует, в поле отображается сообщение "Не удалось найти сообщение Javadoc".

  7. В главном методе введите точку (.) после записи LibClass. Снова появится поле автозавершения кода.
  8. Выберите метод acrostic(String[]args) и нажмите ENTER. После автоматического заполнения метода acrostic появится выделенный параметр args.
  9. Нажмите ENTER для подтверждения параметра args.
  10. Введите точку с запятой (;).

    Последняя строка должна выглядеть следующим образом.

    String result = LibClass.acrostic(args);
  11. Нажмите ENTER для вставки новой строки. Затем введите sout и нажмите клавишу TAB. Сокращение sout расширяется до System.out.println("");, а курсор устанавливается между кавычками. Введите Result = в кавычках и + result после закрывающей кавычки.

    Последняя строка должна выглядеть следующим образом.

    System.out.println("Result = " + result);
  12. Для сохранения файла нажмите сочетание клавиш CTRL+S.

Примечание. sout является одним из многих шаблонов кода, доступных в редакторе исходного кода. Чтобы найти и изменить список шаблонов кода, выберите "Средства > Параметры > Редактор > Шаблон кода".

Компиляция и выполнение приложения

Теперь для выполнения проекта необходимо указать главный класс и аргументы выполнения.

Примечание. По умолчанию проекты создаются с включенной функцией 'Компилировать при сохранении', поэтому пользователям не нужно сначала компилировать сначала собственный код для запуска приложения в IDE. Дополнительные сведения см. в статье Компиляция отдельного файла Java в документе Разработка приложений в IDE NetBeans.

Установка главного класса и аргументов выполнения

Выходные данные программы зависят от аргументов, передаваемых при выполнении программы. В качестве аргументов будет использоваться пять слов, на основе которых будет создан акроним "Hello". Получаемое слово будет состоять из первой буквы первого слова, второй буквы второго слова, третьей буквы третьего слова и т.д.

Добавление аргументов для IDE с целью использования при выполнении приложения:

  1. Щелкните правой кнопкой мыши узел проекта "MyApp", выберите команду "Свойства", а затем выберите узел "Выполнить" в левой области диалогового окна.

    В качестве главного класса должен быть указан acrostic.Main.

  2. Введите However we all feel zealous в поле "Аргументы" и нажмите кнопку "ОК".

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

Приложение создано. Теперь с помощью аргументов выполнения можно протестировать работу приложения в среде IDE.

Выполнение приложения в среде IDE:

  1. Щелкните узел проекта MyApp правой кнопкой мыши и выберите 'Очистить и собрать'.
  2. Выберите "Выполнение" > "Выполнить проект" (F6).

    В окне "Вывод" должны отображаться выходные данные программы Result = Hello (акроним фразы, переданной программе в качестве аргумента).

Тестирование и отладка приложения

Теперь создадим тест и протестируем проект с помощью JUnit, а затем запустим его в отладчике IDE для проверки на наличие ошибок. Тестирование LibClass в JUnit осуществляется путем передачи фразы в метод acrostic и сверки результата с предполагаемыми выходными данными программы.

Создание тестов JUnit

  1. Щелкните правой кнопкой мыши узел LibClass.java в окне "Проекты" и выберите "Сервис > Создать тесты JUnit" (CTRL+SHIFT+U).

    Если тесты JUnit в среде IDE создаются впервые, появится диалоговое окно выбора версии "Выберите версию JUnit". Нажмите ENTER для выбора JUnit 4.x и перейдите (кнопка "Продолжить") к диалоговому окну "Создать тесты".

  2. В диалоговом окне "Создать тесты" нажмите кнопку "ОК" для выполнения команды с параметрами по умолчанию. Средой IDE будет автоматически создан пакет org.me.mylib и файл LibClassTest.java в отдельной папке test. Этот файл можно просмотреть путем развертывания узла "Тесты" и в нем подузла org.me.mylib.
  3. В LibClassTest.java удалите тело метода public void testAcrostic().
  4. Вместо удаленных строк введите или вставьте следующее:
    System.err.println("Running testAcrostic...");
    String result = LibClass.acrostic(new String[]
                      {"fnord", "polly", "tropism"});
                    assertEquals("Correct value", "foo", result);
  5. Сохраните файл путем нажатия CTRL+S.

Выполнение тестов JUnit

  1. Выберите узел проекта "MyLib", а затем выберите "Выполнить > Тестовый проект (MyLib)" (ALT+F6). В окне "Вывод" откроется вкладка MyLib (test). После этого производится компиляция и выполнение тестов JUnit. Результат тестирования JUnit показывает, что тест пройден.
  2. Вместо тестирования целого проекта можно также запустить отдельный файл теста. Выберите вкладку LibClass.java в редакторе исходного кода, а затем выберите "Выполнить > Тестовый файл".

В среде IDE доступна документация по интерфейсу API JUnit. Выберите команду "Справка > Справочные сведения Javadoc > JUnit VersionNumber".

Дополнительные сведения о платформе JUnit приведены на странице http://www.junit.org.

Отладка приложения

В этом разделе с помощью отладчика последовательно выполняются все операции в приложении и рассматривается изменение значений переменных при создании акронима.

Выполнение приложения в отладчике

  1. В файле LibClass.java перейдите к методу acrostic и установите курсор в любом месте внутри b.append(args[i].charAt(i));. Затем нажмите сочетание клавиш CTRL+F8 для создания точки останова.
  2. Выберите Отладка > Отладка проекта (Ctrl-F5). Среда IDE открывает окна отладки и выполняет проект в отладчике до достижения установленной точки останова.
  3. Откройте окно "Локальные переменные" в нижней области среды IDE и разверните узел args. Массив строк содержит фразу, введенную в качестве аргументов команды.
  4. Нажмите клавишу F7 (или выберите команду "Отладить" > "Войти") для перехода к программе и просмотра изменения переменной b по завершении создания акронима.

    После завершения программы окна отладки закрываются.

Дополнительные сведения см в разделе Запись тестов JUnit в IDE NetBeans.

Сборка, выполнение и распространение приложения

Убедитесь, что приложение работает соответствующим образом, после чего можно перейти к подготовке приложения к развертыванию вне среды IDE. В этом разделе будет создан архив JAR приложения, который затем будет запущен из командной строки.

Сборка приложения

Основная команда сборки в среде IDE - команда 'Очистить и собрать'. Команда 'Очистить и собрать' удаляет предварительно скомпилированные классы и другие результаты предыдущей сборки, после чего выполняется повторная сборка проекта.

Примечание. Кроме того, существует команда 'Собрать', использование которой не приводит к удалению результатов предыдущей сборки. Эта команда отключена по умолчанию. Дополнительная информация приведена в статье Сборка проектов Java в документе Разработка приложений в IDE NetBeans.

Для сборки приложения выполните следующие действия.

  • Выберите Запуск > Очистить и собрать проект (Shift-F11).

Результат выполнения сценария сборки Ant должен появиться в окне 'Результаты'. Если окно "Вывод" не отображается, его можно открыть вручную путем выбора команды "Окно > Вывод > Вывод".

При очистке и сборке проекта выполняются следующие действия:

  • Удаляются ('очищаются') папки результатов, созданные при предыдущей сборке. (В большинстве случаев это папки build и dist).
  • К папке проекта (далее именуемой "папка PROJECT_HOME") добавляются папки build и dist. Эти папки можно просмотреть в окне "Файлы".
  • Все исходные файлы компилируются в файлы .class, которые помещаются в папку PROJECT_HOME/build.
  • В папке PROJECT_HOME/dist создается архив JAR, содержащий проект.
  • Если для проекта указаны какие-либо библиотеки (кроме JDK), в папке dist создается папка lib. Библиотеки копируются в папку dist/lib.
  • Обновляется файл манифеста в архиве JAR – в него включаются записи, обозначающие главный класс, и все библиотеки, которые расположены по пути к классам проекта.

Примечание. Содержимое Manifest можно просмотреть в окне 'Файлы' IDE. После завершения процесса создания проекта откройте окно "Файлы" и перейдите к dist/MyApp.jar. Разверните узел архива JAR, откройте папку META-INF и дважды щелкните файл MANIFEST.MF, чтобы открыть его в редакторе исходного кода.

Main-Class: acrostic.Main
            Class-Path: lib/MyLib.jar

(Дополнительные сведения о файлах манифеста приведены в этом разделе в учебном курсе по Java).

Запуск приложения вне среды IDE

Для запуска приложения вне среды IDE выполните следующие действия.

  1. Вызовите командную строку или окно терминала.
  2. В командной строке измените каталоги на каталог MyApp/dist.
  3. В командной строке введите следующий оператор:
                    java -jar MyApp.jar However we all feel zealous    

Далее приложение выполняется и возвращает следующие данные, как показано ниже:

Result = Hello
            
Командная строка, в которой показываются выходные данные запущенного приложения

Распространение приложения другим пользователям

После проверки корректности работы приложения вне среды IDE можно подготовить приложение к распространению.

Для распространения приложения выполните следующие действия.

  1. В системе создайте файл ZIP, включающий архив JAR приложения (MyApp.jar) и сопутствующую папку lib, которая содержит файл MyLib.jar.
  2. Отправьте этот файл пользователям, которые будут работать с приложением. Предоставьте указания по распаковке файла ZIP, определяющие необходимость размещения файла MyApp.jar и папки lib в одной папке.
  3. Также предложите пользователям выполнить действия в разделе Запуск приложения вне среды IDE.

Другие распространенные задачи

Работа с основной частью учебного курса завершена. При этом необходимо уделить внимание другим базовым задачам. В этом разделе рассматривается несколько таких задач.

Обеспечение доступности документации Javadoc в среде IDE

Для просмотра документации по API JavaSE в IDE NetBeans используйте команду 'Исходный код > Показать документацию' или выберите Окно > Другое > Документация Javadoc в главном меню. Документация по API открывается в отдельном окне.

Однако для некоторых сторонних библиотек документация по API недоступна. В этом случае ресурсы Javadoc необходимо связать со средой IDE вручную.

Обеспечение доступности документации Javadoc по API через команду "Просмотреть Javadoc":

  1. Загрузите исходные файлы документации Javadoc по API (дополнительные сведения можно найти на странице FaqJavaDoc).
  2. Выберите 'Служба'> 'Платформы Java'.
  3. Выберите вкладку "Javadoc".
  4. Нажмите кнопку "Добавить архив ZIP/папку" и перейдите к файлу ZIP или к папке, содержащей документацию Javadoc по интерфейсу API в системе. Выберите файл с ZIP или папку и нажмите кнопку "Добавить архив ZIP/папку".
  5. Выберите "Close" (Закрыть).

Создание документации Javadoc для проекта

Скомпилированную документацию Javadoc для проекта можно создать на основе комментариев Javadoc, добавленных к классам.

Для создания документации Javadoc для проекта:

  1. Выберите проект "MyLib".
  2. Выберите "Выполнить" > "Создать документацию Javadoc для MyLib" в главном меню среды IDE.
    Созданная документация Javadoc добавляется к папке dist проекта. Кроме того, в среде IDE открывается веб-браузер, в котором отображается документация Javadoc.

Что дальше?

Дополнительные сведения об использовании IDE NetBeans для разработки приложений Java SE см. следующие ресурсы:

get support for the NetBeans

Support


By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2013, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo