Помощь студентам дистанционного обучения: тесты, экзамены, сессия
Помощь с обучением
Оставляй заявку - сессия под ключ, тесты, практика, ВКР
Заявка на расчет

Лабораторный практикум по Java для МТИ. Лабораторная работа №1

Автор статьи
Валерия
Валерия
Наши авторы
Эксперт по сдаче вступительных испытаний в ВУЗах

Содержание

 

Лабораторная работа №1 Установка Tomcat. Настройка сборщика Maven, создание и запуск веб-приложения с помощью Maven

Цель работы
  1. Познакомиться с корпоративными средствами создания и сборки приложений Java EE.
  2. Создать веб-приложение посредством Maven и импортировать его под Eclipse.
  3. Разобраться в понятиях «зависимость» и «плагин» в Maven.
Программное обеспечение
  1. Eclipse
  2. Maven 3
  3. JDK 1.6
Необходимая теоретическая подготовка
  • Представление о разработке на языке Java и прохождение большей части вводных занятий по разработке на Java core (SE).
  • Умение скачать и произвести установку JDK.
  • Умение скачать и распаковать eclipse.
  • Умение скачать и распаковать maven.
Теоретическая часть Для написания программного кода удобнее использовать специальную интегрированную среду разработки (Eclipse, IDE), которая обеспечивает удобное редактирование кода, подсветку синтаксиса, вызов компилятора (интерпретатора), средства отладки и другие инструменты, значительно упрощающие написание кода и сборку итоговых файлов. Последнюю версию Eclipse можно скачать с официального сайта (ссылку см. выше, в разделе Введение). По желанию можно выбрать и скачать другие среды разработки, например, IntelliJ IDEA. Оба этих средства являются необходимыми средствами корпоративной разработки в различных компаниях.

Apache Maven POM (Проектно-Объектная Модель) – технология, созданная для автоматизации сборок Java-проектов, основой которой является XML-язык.

Maven – инструмент для сборки Java-проекта: компиляции, создания jar, создания дистрибутива программы, генерации документации( http://www.apache-maven.ru/).

Простые не командные проекты можно собирать и в командной строке. Если собирать крупные проекты используя командную строку, то команды сборки будут большими, поэтому их иногда записывают в bat или sh скрипты. Но такие скрипты зависят от платформы. Для того чтобы избавиться от зависимости от платформы и упростить написание скрипта, используют инструменты для сборки проекта. Основные преимущества Maven: — Независимость от определённой OS. — Управление зависимостями проекта. — Возможна сборка из командной строки любой системы. — Хорошая интеграция с различными средами разработки. — Декларативное описание проекта. Maven обеспечивает декларативную сборку любого проекта – используя файл проекта pom.xml, который содержится декларативное описание, а не отдельные команды. Все задачи по обработке файлов Maven выполняет через плагины. В заданиях настоящего лабораторного практикума будут использоваться плагины для создания, сборки, а также запуска проекта. Информация программного проекта, поддерживаемого фреймворком Maven, находится в XML-файле pom.xml. При исполнении Maven проверяет, прежде всего, содержит ли этот файл все необходимые данные и все ли данные правильно записаны. После этого производит запуск требуемых плагинов. В Maven кроме понятий зависимости и плагина имеется понятие жизненного цикла.

Жизненный цикл проекта – список фаз, определяющий порядок действий при его построении.

На рисунке ниже приведены основные фазы сборки проекта в Maven.

Рисунок 1. Основные фазы сборки проекта в Maven

В Maven также имеется стандартный жизненный цикл для чистки (cleaning) (запускается командой clean), который осуществляет очистку проекта. Pom-файл состоит из многих элементов. Основные из них – корневой сегмент и заголовок. В Maven каждый проект идентифицируется парой groupId artifactId. Во избежание конфликта имен:
  • groupId – наименование организации или подразделения. Обычно записывают доменное имя организации или сайта проекта.
  • artifactId – название проекта.
Внутри тэга version, как можно догадаться, хранится версия проекта. Тремя тегами groupId, artifactId, version (далее – GAV) можно однозначно идентифицировать jar-файл приложения или библиотеки. Если состояние кода для проекта не зафиксировано, то в конце к имени версии добавляется «-SNAPSHOT», что обозначает, что версия в разработке и результирующий jar-файл может меняться. Тег <packaging>…</packaging> определяет, какого типа файл будет создаваться как результат сборки. Возможные варианты pom, jar, war, ear 2. Зависимости

Зависимости – это очень важная часть pom.xml, которая хранит список всех зависимостей, используемых в проекте и подпроектах.

Как и сам проект, любая библиотека идентифицируется тремя тэгами : groupId, artifactId, version. Объявление зависимостей заключено в тэг <dependencies>…</dependencies>. Тэг <build> является необязательным тегом.

Раздел, указанный тегом <build>, содержит полную информацию по сборке приложения, который описывает, где хранятся исходные файлы, какие ресурсы используются и какие плагины настроены.

Maven плагины позволяют задать дополнительные действия, которые будут выполняться при сборке. Для Maven существует еще одно понятие – репозиторий.

Репозиторий – специальное место для MAVEN, предназначенное для хранения артефактов таких как jar-файлов, pom-файлов, javadoc, исходников.

Существуют следующие виды репозиториев:
  • Локальный репозиторий – по умолчанию расположен в <home директория>/.m2/repository – и является персональным для каждого пользователя. В локальном репозитории хранятся артефакты, которые были скачаны из центрального репозитория, либо были добавлены другими способами. При запуске команды install в проекте собирается архив jar, который и будет сохранён в локальный репозиторий.
  • Центральный репозиторий – расположен по адресу http://repo1.maven.org/maven2/ и доступен для чтения для всех пользователей в интернете. Заполнением центрального репозитория занимаются команды разработки различных технологий и библиотек, которые и будут использоваться в дальнейшем.
Для запуска Maven из командной строки используется команда mvn.

Практическая часть

I. Настройка инструментариев и среды для разработки приложений на JAVA Для того чтобы начать работу со сборщиком приложения Maven необходимо провести настройку среды. Для этого нужно: 1. Установить переменную окружения M2_HOME. Для этого необходимо в Windows кликнуть правой кнопкой мыши на Компьютер, затем Свойства → Дополнительные параметры → Переменные среды → Системные переменные и там добавить «M2_HOME» и «Путь к распакованному Maven». 2. Установить переменную окружения PATH. В Windows в переменной PATH добавить к списку директорий строку %M2_HOME%\bin». 3. Установить переменную окружения JAVA_HOME, которая указывает путь к установленному JDK (по аналогии с предыдущими пунктами) Результат должен быть таким же, как на рисунке ниже.

Рисунок 2. Настройка среды

4. Проверить корректность установки, набрав в командной строке mvn –version. Требуемый результат должен быть таким, как показано на рисунке ниже.

Рисунок 3. Проверка работы Maven

Необходимо посмотреть вывод этой команды и проверить, что все пути к maven и java верны. Если что-то не работает, причина, скорее всего, в неправильном указании пути к jdk. В случае ошибки необходимо внимательно проверить пути. II. Создание веб-приложения 1. Выполнить команду для генерации шаблона приложения и дальнейшей разработки.

mvn archetype:generate -DgroupId={project-packaging} — DartifactId={project-name} -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false

Указать параметры project-packaging, project-name самостоятельно, то есть придумать название проекта и пакет для его хранения.

2. Просмотреть и изучить структуру созданного шаблона приложения. Необходимо разобраться и изучить его структуру, а так же доработать при необходимости. Для этого необходимо открыть проводник, перейти в каталог созданного приложения и просмотреть структуру приложения. 3. Перейти в каталог \src\main из сформированного приложения и создать папку java, которая по умолчанию отсутствует для данного типа приложения. В ней будут находиться исходники разрабатываемых классов, которые буду использоваться при работе приложения в дальнейшем. 4. Необходимо собрать созданный проект и проверить его корректность сборки. Из корня приложения запустить команду mvn clean install. Результат должен быть таким, как показано на рисунке ниже, со статусом BUILD SUCCESS. Это означает, что приложение правильно создано и успешно компилируется в готовую сборку, которая является конечным этапом разработки приложения.

Рисунок 4. Вывод работы maven в консоли

5. Найти и просмотреть файлы созданного веб-приложения (.war) в локальном репозитории, собранные в архив <home директория> /.m2/repository/ <groupIdPath>/ <artifactId>/ <version>/ <artifactId>-<version>.war. Эти файлы будут использоваться при запуске приложения на сервер или при настройке зависимостей на собранные библиотеки в других приложениях.

Рисунок 5. Структура репозитория

III. Настройка приложения для среды разработки eclipse 1. Выполнить команду из корня созданного приложения:

mvn eclipse:clean eclipse:eclipse

Данная команда создает каркас приложения под ide eclipse при помощи запуска плагина maven(eclipse:eclipse). 2. После успешного выполнения данной команды, необходимо запустить приложение eclipse. IV. Создание базового проекта

1. Зайти в пункт меню File → New и выбрать Java project. Теперь проект создан. 2. Необходимо провести настройку JAVA для созданного проекта, так как по умолчанию приложение настроено на JRE, а следует перенастроить работу с JDK (JRE в данном случае не подходит, т.к. является исполнительной средой для JAVA, а не средой для разработчика). 3. Для настройки JAVA в среде Eclipse необходимо зайти в меню Windows → Preferences (см. рисунок ниже).

Рисунок 6. Меню Windows Preferences

4. Выбрать Java →Installed JREs и добавить ранее установленный JDK как основой.

Рисунок 7. Настройка JDK в Eclipse

5. Выполнить команду import ранее созданного приложения при помощи maven. Для этого нажать правой кнопки мыши в пустом поле вкладки Project Explorer и выбрать команду Import. (см. рисунок ниже).

Рисунок 8. Выбор пункта меню Import

6. В появившемся меню выбрать тип проекта Exisiting projects into Workspace.

Рисунок 9. Меню импорта существующего проекта.

7. Найти проект, созданный при помощи maven, и нажать finish. Если все действия выполнены правильно, то в итоге в боковом меню появится проект (см. рисунок ниже).

Рисунок 10. Созданный проект в меню

V. Разработка и наполнение проекта Созданный проект готов к разработке и наполнению. 1. Подключить дополнительный плагин для запуска веб-сервера jetty с помощью maven. Для этого необходимо открыть pom.xml и в раздел <build>… </build> добавить плагин jetty (см. ниже). Сохранить изменения в проекте. 2. Запустить веб-сервер jetty Для запуска веб-сервера jetty с помощью данного плагина из командной строки, необходимо запустить команду mvn jetty:run. По умолчанию сервер запускается по порту 8080. По успешному запуску из командной строки, выведется сообщение об успешном запуске сервера (см. рисунок ниже).

Рисунок 11. Сообщение об успешном запуске сервера

Далее необходимо запустить веб-браузер, установленный на вашем компьютере, и перейти по ссылке http://localhost:8080. Должна отобразиться успешно отработанная страница с вашего вебсервера (см. рисунок ниже).

Рисунок 12. Отображение страницы в веб-браузере

Отчет о выполнении работы 1. Отчет о проделанной работе с подробным описанием этапов выполнения работы, что и для чего было сделано. 2. Файлы исходного кода созданного проекта. Вопросы для самопроверки 1. Чем отличаются зависимости от плагинов в Maven? 2. В чем особенность этапа жизненного цикла clean и чем он отличается от запуска плагина eclipse:clean? 3. Разобрать состав проектного файла pom.xml (ссылка). Какие теги за что отвечают? 4. Что такое локальный и удаленный репозиторий (maven repository)? 5. Какие есть особенность и параметры и плагина mvn archetype:generate? 6. Разобрать в настройке дополнительных параметров плагина maven jetty. Как применяются дополнительные параметры и на что они влияют? Литература 1. http://www.apache-maven.ru/ – Документация по Maven. 2. http://docs.codehaus.org/display/JETTY/Maven+Jetty+Plugin – Документация по настройке Jetty-плагина для Maven.

или напишите нам прямо сейчас

Написать в WhatsApp Написать в Telegram

О сайте
Ссылка на первоисточник:
https://www.gmuonline.org/ru/
Поделитесь в соцсетях:

Оставить комментарий

Inna Petrova 18 минут назад

Нужно пройти преддипломную практику у нескольких предметов написать введение и отчет по практике так де сдать 4 экзамена после практики

Иван, помощь с обучением 25 минут назад

Inna Petrova, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Коля 2 часа назад

Здравствуйте, сколько будет стоить данная работа и как заказать?

Иван, помощь с обучением 2 часа назад

Николай, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Инкогнито 5 часов назад

Сделать презентацию и защитную речь к дипломной работе по теме: Источники права социального обеспечения. Сам диплом готов, пришлю его Вам по запросу!

Иван, помощь с обучением 6 часов назад

Здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Василий 12 часов назад

Здравствуйте. ищу экзаменационные билеты с ответами для прохождения вступительного теста по теме Общая социальная психология на магистратуру в Московский институт психоанализа.

Иван, помощь с обучением 12 часов назад

Василий, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Анна Михайловна 1 день назад

Нужно закрыть предмет «Микроэкономика» за сколько времени и за какую цену сделаете?

Иван, помощь с обучением 1 день назад

Анна Михайловна, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Сергей 1 день назад

Здравствуйте. Нужен отчёт о прохождении практики, специальность Государственное и муниципальное управление. Планирую пройти практику в школе там, где работаю.

Иван, помощь с обучением 1 день назад

Сергей, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Инна 1 день назад

Добрый день! Учусь на 2 курсе по специальности земельно-имущественные отношения. Нужен отчет по учебной практике. Подскажите, пожалуйста, стоимость и сроки выполнения?

Иван, помощь с обучением 1 день назад

Инна, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Студент 2 дня назад

Здравствуйте, у меня сегодня начинается сессия, нужно будет ответить на вопросы по русскому и математике за определенное время онлайн. Сможете помочь? И сколько это будет стоить? Колледж КЭСИ, первый курс.

Иван, помощь с обучением 2 дня назад

Здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Ольга 2 дня назад

Требуется сделать практические задания по математике 40.02.01 Право и организация социального обеспечения семестр 2

Иван, помощь с обучением 2 дня назад

Ольга, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Вика 3 дня назад

сдача сессии по следующим предметам: Этика деловых отношений - Калашников В.Г. Управление соц. развитием организации- Пересада А. В. Документационное обеспечение управления - Рафикова В.М. Управление производительностью труда- Фаизова Э. Ф. Кадровый аудит- Рафикова В. М. Персональный брендинг - Фаизова Э. Ф. Эргономика труда- Калашников В. Г.

Иван, помощь с обучением 3 дня назад

Вика, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Игорь Валерьевич 3 дня назад

здравствуйте. помогите пройти итоговый тест по теме Обновление содержания образования: изменения организации и осуществления образовательной деятельности в соответствии с ФГОС НОО

Иван, помощь с обучением 3 дня назад

Игорь Валерьевич, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Вадим 4 дня назад

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

Иван, помощь с обучением 4 дня назад

Вадим, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Кирилл 4 дня назад

Здравствуйте! Нашел у вас на сайте задачу, какая мне необходима, можно узнать стоимость?

Иван, помощь с обучением 4 дня назад

Кирилл, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Oleg 4 дня назад

Требуется пройти задания первый семестр Специальность: 10.02.01 Организация и технология защиты информации. Химия сдана, история тоже. Сколько это будет стоить в комплексе и попредметно и сколько на это понадобится времени?

Иван, помощь с обучением 4 дня назад

Oleg, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Валерия 5 дней назад

ЗДРАВСТВУЙТЕ. СКАЖИТЕ МОЖЕТЕ ЛИ ВЫ ПОМОЧЬ С ВЫПОЛНЕНИЕМ практики и ВКР по банку ВТБ. ответьте пожалуйста если можно побыстрее , а то просто уже вся на нервяке из-за этой учебы. и сколько это будет стоить?

Иван, помощь с обучением 5 дней назад

Валерия, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Инкогнито 5 дней назад

Здравствуйте. Нужны ответы на вопросы для экзамена. Направление - Пожарная безопасность.

Иван, помощь с обучением 5 дней назад

Здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Иван неделю назад

Защита дипломной дистанционно, "Синергия", Направленность (профиль) Информационные системы и технологии, Бакалавр, тема: «Автоматизация приема и анализа заявок технической поддержки

Иван, помощь с обучением неделю назад

Иван, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Дарья неделю назад

Необходимо написать дипломную работу на тему: «Разработка проекта внедрения CRM-системы. + презентацию (слайды) для предзащиты ВКР. Презентация должна быть в формате PDF или формате файлов PowerPoint! Институт ТГУ Росдистант. Предыдущий исполнитель написал ВКР, но работа не прошла по антиплагиату. Предыдущий исполнитель пропал и не отвечает. Есть его работа, которую нужно исправить, либо переписать с нуля.

Иван, помощь с обучением неделю назад

Дарья, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru