
- •Введение в Java и средства разработки на Java Eclipse sdk.
- •Общие сведения
- •Общая схема программы на Java
- •Синтаксические конструкции Java
- •Комментарии
- •Лексемы
- •Идентификаторы
- •Литералы
- •Переменные
- •Операторы
- •Массивы
- •Ввод и вывод данных
- •Преобразование типов
- •Среда разработки Eclipse sdk
- •Среда разработки NetaBeance. Пример разработки программы HelloMiet
- •Создание и запуск программы HelloMiet ide NetBeance
- •Компиляция и запуск программы HelloMiet из командной строки
- •Р ис.12. Окно свойств проекта.
- •Р ис. 14. Перемещение в папку проекта.
- •Р ис.19. Содержимое папки проекта
- •Распространение программ на Java. Jar – архивы.
- •Запуск программы HelloMiet с аргументами командной строки
- •Р ис. 23. Запуск программы с аргументами командной строки
- •Оформление программы HelloMiet по схеме mvc
- •Оформление программы HelloMiet с помощью JavaDoc
- •Общие принципы документирование кода в Java
- •Контрольные вопросы
- •Варианты заданий
- •Приложение 1. Зарезервированные слова Java
- •Приложение 2. Дескрипторы JavaDoc
- •Общая информация
- •Справочник дескрипторов javadoc
- •Приложение 3. Схема mvc.
Р ис.19. Содержимое папки проекта
Попробуем выполнить HelloMiet.class командой java HelloMiet. Наблюдаем ошибку — не найден класс. Это происходит потому, что файл находится в пакете (пространстве имен) hellomiet и должен быть выполнен с учетом пакета т.е. вот так java hellomiet.HelloMiet, при этом нужно находиться снаружи папки пакета. Перемещаемся в папку classes и выполняем java hellomiet.HelloMiet. Наблюдаем вывод HelloMiet в консоль (рис. 20.).
Рис. 20. Выполнение программы HelloMiet из консоли
Можно запустить программу на HelloMiet из любой папки диска, но для этого интерпретатору java нужно указать путь к папке в которой находится пакет (или пакеты) с откомпилированными файлами классов Java. Это делается с помощью ключа -classpath после которого пишется путь к папке, содержащей пакеты java. Например, запустить HelloMiet из корневой папки проекта можно командой: java -classpath build/classes hellomiet.HelloMiet (рис.20)
Рис.20.
Запуск программы HelloMiet
и
з
корневой папки проекта
Посмотреть все ключи и настройки интерпретатора java можно командой java -help
Распространение программ на Java. Jar – архивы.
Сложные программы на Java могут содержать десятки пакетов и сотни классов как собственных, так и импортируемых. Таким образом, программа может быть зависима от импортируемых классов, которые могут находиться в разных папках на компьютере и даже подключаться по сети. Т.к. при компиляции в классы и передаче их потребителю нет гарантии, что у него на машине есть те-же библиотеки, что и у разработчика от которых зависит выполнение программы, то для распространения программ на java был придуман специальный вид архива — jar, а помещение в этот архив всего необходимого для запуска программы называется сборкой (build). Процесс сборки сложных приложений намного сложнее простой компиляции, поэтому его разумно поручить среде разработки.
Популярные IDE: IntellageID, NetBeance, Eclipse обладают инструментарием для сборки jar. Например, в NetBeance для выполнения сборки достаточно нажать правой клавишей мыши на названии проекта и в выпадающем меню выбрать «Собрать» (build). В результате будет создан архив jar в котором будут собраны все ресурсы, необходимые для автономного запуска приложения. Если операцию сборки выполнить для HelloMiet.java то NetBeance создаст папку dist в папке проекта и в ней файл HelloMiet.jar (рис. 21.).
Рис.
21. Сборка проекта в N
etBeance
Исполняемые jar-архивы запускаются командой вида: java -jar [путь к файлу][имя jar-файла]. Поскольку все ресурсы собраны внутри jar-архива, то не требуется никаких указаний путей к классам и пакетам. Для программы HelloMiet в jar-архиве, запускаемой в командной строке из корневой папки проекта команда запуска будет иметь вид (рис. 22.):
java -jar dist/HelloMiet.jar
Рис.
22. Запуск исполняемого j
ar-архива
Исполняемым называется jar-архив, который имеет внутри себя класс с методом main. Кроме исполняемых jar-архивов существуют еще библиотечные jar-архивы, которые предназначены для распространения библиотек классов.