Проектирование и анализ ПО Дмитриев Андрей Владиславович andrei-dmitriev@yandex.ru http://in4mix2006.narod.ru 2008.

Презентация:



Advertisements
Похожие презентации
EXtreme Programming XP Тема 7. XP Ant – инструмент для создания, развертывания, запуска программ Java, создания базы данных, выполнения различных проверок.
Advertisements

Java Advanced Apache Ant. 2 СПбГУ ИТМО Georgiy KorneevJava Advanced / Описание и проверка структуры XML Содержание 1.Введение 2.Задания 3.Цели 4.Проекты.
Java Advanced Apache Ant. 2 СПбГУ ИТМО Georgiy KorneevJava Advanced / Описание и проверка структуры XML Содержание 1.Введение 2.Задания 3.Цели 4.Проекты.
Программная инженерия Дмитриев Андрей Владиславович
Программная инженерия Андрей Дмитриев ©
Платформа Java SE: введение Андрей Дмитриев
Тема 5. Введение в среду визуального программирования Borland Delphi 7.0.
Jar Java Advanced. 2Georgiy KorneevJava Advanced / Javadoc Содержание 1.Jar-файлы 2.Манифесты 3.Заключение.
Практическое использование Java Макаревич Л. Г.. Инсталляция Java Документация в docs Прописать PATH (каталог bin в JSDK) Прописать CLASSPATH (путь к.
Программная иженерия Андрей Дмитриев ©
Psychological help for teens I want to create an organization where specialists will help teenagers to solve their problems with parents.
Тема 5. Основы современной технологии программирования Программирование в средах современных информационных систем. Интегрированные системы разработки.
Докладчик: Кин Кирилл, ВМИ-115 Windows Azure Демонстрация разработки и внедрения простейшего сервиса.
Глава 2 Интерфейс Конфигурационное управление с применением ClearCase Интерфейс ClearCase.
Инструменты VS 2010 для работы с XML языком XML редактор. XSLT отладчик XSLT Profiler, инструмент позволяющий разработчикам измерять, оценивать и решать.
Yogesh Mehla Now concept of logic building is not so complex and not so simple. We will not work on how to make logic program in.
Javadoc Java Advanced. 2Georgiy KorneevJava Advanced / Javadoc Содержание 1.Структура Javadoc 2.Блочные тэги 3.Строчные тэги 4.Применение Javadoc 5.Компиляция.
Версия сборки Номер версии сборки имеет формат major.minor.build.revision. Например, Значения major(старший), minor(младший), build (компоновка)
Начальные сведения по созданию проекта Разработал учитель информатики МБОУ СОШ 50 г. Краснодара Ракута Елизавета Григорьевна « Не бойся, что не знаешь,
USB Download Manual (v1.3) (GP2 Year 2010) LG Electronics/ LCD TV Division Feb. 17 th, Applied Models & Notice - File Copy - User Download Mode.
Транксрипт:

Проектирование и анализ ПО Дмитриев Андрей Владиславович

Инструментарий разработчика: Ant Определение. Зависимости.

Что такое Ant? инструмент, предназначенный для автоматизации процесса сборки ПО. может выполнять все действия по подготовке проекта к публикации. Не зависит от платформы.

Прямой подход к сборке $ javac -d build src/Main.java src/Utils.java src/GUI.java $ cd build $ jar -cvf../application.jar Main.class Utils.class GUI.class Все действия по сборке проекта можно осуществлять в командной строке:

Первичная автоматизация #!/bin/sh javac -d build src/Main.java src/Utils.java src/GUI.java cd build jar -cvf../application.jar Main.class Utils.class GUI.class … или поместить в файл сценария:

Недостаток сценариев Сценарий специфичен для платформы.

Установка ant Скачать и установить JDK c сайта Скачать и установить дистрибутив ant с сайта Добавление каталога /bin/ в переменную окружения PATH.

Пример файла конфигурации (1/3) … Файл build.xml содержит информацию о свойствах

Пример файла конфигурации (2/3) … … и целях:

Пример файла конфигурации (3/3)

Состав файла конфигурации Файл имеет структуру XML документа. Элементы файла конфигурации:

Имеет параметры: Имя. Задание по умолчанию (compile). Рабочий каталог.

Представляют собой сущности, аналогичные неизменяемым переменным в языках программирования. Каждой свойство имеет заданное значение на протяжении времени выполнения сценария. Использование свойств:

Имеет свойства: Имя (обязательное), Зависимости, Описание. Описывает именованную последовательность действий.

Опции утилиты ant $ ant -help ant [options] [target [target2 [target3]...]] Options: -help, -h print this message -projecthelp, -p print project help information -version print the version information and exit -diagnostics print information that might be helpful to diagnose or report problems. -quiet, -q be extra quiet -verbose, -v be extra verbose -debug, -d print debugging information -lib specifies a path to search for jars and classes -logfile use given file for log -logger the class which is to perform logging -listener add an instance of class as a project listener -buildfile use given buildfile -file '' -f '' -keep-going, -k execute all targets that do not depend on failed target(s) -propertyfile load all properties from file with -D properties taking precedence -inputhandler the class which will handle input requests -find (s)earch for buildfile towards the root of -s the filesystem and use it -noclasspath Run ant without using CLASSPATH

Запуск сборки ant [–f build.xml] Buildfile:build.xml prepare: [mkdir ] Created dir::C:\antbook \build [mkdir ] Created dir::C:\antbook \build \classes [mkdir ] Created dir::C:\antbook \build \lib compile: [javac ] Compiling 3 source files to C::\antbook \build \classes BUILD SUCCESSFUL Total time:5 seconds

Пояснительная информация I'm cleaning up. При необходимости важные этапы сборки можно снабдить сообщениями: $ Ant clean Buildfile: build.xml clean: [echo] I'm cleaning up. BUILD SUCCESSFUL Total time: 1 second Вывод:

Сборка проекта Исходные коды. Создание файла build.xml. Запуск сборки. Проверка результатов.

Сборка проекта D:\...plateCourse\examples\ant_example>ls -l total 2 -rw-r--r-- 1 user1 Отсутств 1206 Jan 2 01:59 Stack.java Пусть есть проект, состоящий из одного класса: Предполагается, что ant и javac указаны в переменной PATH.

Создание файла build.xml Создадим основу документа и одну цель - создание каталога:

Создаем иерархию каталогов $ ant -f build_app.xml make.dirs Buildfile: build_app.xml make.dirs: [mkdir] Created dir: D:\work\ant_example\build [mkdir] Created dir: D:\work\ant_example\build\class BUILD SUCCESSFUL Total time: 0 seconds

Компиляция класса Добавим компиляцию с зависимостью:

Вызов компиляции $ ant -f build_app.xml compile Buildfile: build_app.xml make.dirs: compile: [javac] Compiling 1 source file to D:\work\ant_example\build\class BUILD SUCCESSFUL Total time: 7 seconds

Объединение целей Добавим цель для выполнения всех действий:

Очистка дистрибутива I'm cleaning up. Понадобится также возможность очистки проекта:

Значение CLASSPATH Необходимые для сборки классы должны быть упомянуты в переменной окружения или свойстве компилятора –cp. В файле конфигурации ant можно указать это свойство для цели: можно указать глобальное свойство, общее для всех целей:

Создание дистрибутива Упаковка классов в jar архив:

Файл свойств ant Свойства могут быть описаны в отдельном файле: # A sample Ant properties file # build.dir=dist prj_name=Stack application Файл свойств имеет форму ключ-значение:

Цели по условию Выполнение задач может зависеть от некоторых условий: Do debug build Pretending to do a production build

Выводы Поведение Ant не зависит от платформы. Ориентирован на ведение Java проектов.

Ссылки Ant, the definitive guide, Jesse Tilly, Eric M. Burke. Java Development with Ant, Erik Hatcher, Steve Loughran.

Q&A

Дмитриев Андрей Владиславович Спасибо!