АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Targets

Читайте также:
  1. Development of tractor advertisements
  2. DIFFERENT TYPES OF PERSONALITY MOTIVATION AND SELF-GOVERNMENT INFLUENCE ON MENTAL ACTIVITY PRODUCTIVITY
  3. ELECTRONIC CHART SYSTEM
  4. Mechanisms of action of laser radiation on biological tissues
  5. PASSAGE PLANNING IN RESTRICTED WATERS
  6. Reading
  7. VxWorks/Tornado
  8. Глоссарий 13 страница
  9. Заняття № 20. Розвиток сучасної техніки в рамках концепції сталого розвитку. Engineering for Sustainable Development
  10. Микроархитектура процессора Prescott
  11. Мини-ситуация
  12. Передача контроля над корпорацией
Цель может зависеть от других целей. Например, имеются две цели: для компиляции и для изъятия файлов с базы данных. Соответственно скомпилировать файлы можно только после того, как они будут извлечены. Ant учитывает такие зависимости.Следует отметить, что depends -атрибут Ant только обозначает порядок,
в котором цели должны быть выполнены. Ant пробует выполнить цели в порядке, соответствующем порядку их появления в атрибуте depends (слева направо).<target name="A"/><target name="B" depends="A"/><target name="C" depends="B"/><target name="D" depends="C,B,A"/>Пусть нужно выполнить цель D. Из её атрибута depends можно узнать, что первой выполнится цель C, затем B и, наконец, A. Неверно: C зависит от B, a B зависит от A, таким образом, первой выполнится цель A, затем B, потом C, а после D.Цель будет исполнена только один раз, даже если более чем одна цель зависит от неё.Цель также имеет возможность быть исполненной только в случае, если определённый параметр (property) был (или не был) установлен. Это позволяет лучше контролировать процесс сборки (например, в зависимости от операционной системы, версии Java и т.д.). Ant только проверяет, установлено ли то либо иное свойство, значение его не важно. Свойство, значением которого является пустая строка, считается заполненным. Например:<target name="build-module-A" if="module-A-present"/><target name="build-own-fake-module-A" unless= "module-A-present"/>Если не установлены if и unless атрибуты, цель будет выполняться всегда.Опциональный атрибут description может быть использован как описание цели и будет выводиться при команде– projecthelp. Target имеет следующие атрибуты:
Атрибут Описание Обязательность
name Имя цели Да
depends Разделённый запятыми список имён целей, от которых эта цель зависит Нет
if Имя параметра, который должен быть установлен, чтобы эта цель выполнялась Нет
unless Имя параметра, который не должен быть установлен, чтобы эта цель выполнялась Нет
description Небольшое описание функции function цели Нет
Имя цели должно состоять только из букв и цифр, включая пустую строку "", "," и пробел.Пример build- файла:

<?xml version='1.0' encoding='ISO-8859-1'?>

<project name="MyProject" default="dist" basedir=".">

<description>

Простой пример build файла

</description>

<!-- установка глобальных параметров -->

<property name="src" location="src"/>

<property name="build" location="build"/>

<property name="dist" location="dist"/>

<target name="init">

<!-- Создать марку времени -->

<tstamp/>

<!-- Создать структуру build директории, которая будет использоваться при компиляции-->

<mkdir dir="${build}"/>

</target>

<target name="compile" depends="init"

description="compile the source " >

<!-- Компиляция java кода из ${src} в ${build} -->

<javac srcdir="${src}" destdir="${build}"/>

</target>

<target name="dist" depends="compile"

description="генерация дистрибутива" >

<!-- создание директории для дистрибутива -->

<mkdir dir="${dist}/lib"/>

 

<!-- Положить всё из ${build} в MyProject-${DSTAMP}.jar файл -->

<jar jarfile="${dist}/lib/MyProject-${DSTAMP}.jar" basedir="${build}"/>

</target>

<target name="clean"

description="очищает рабочие каталоги" >

<!-- Delete the ${build} and ${dist} directory trees -->

<delete dir="${build}"/>

<delete dir="${dist}"/>

</target>

</project>

Некоторым целям было дано описание. Это значит, что командой projecthelp будет получен список этих целей с описанием; остальные цели считаются внутренними и не выводятся.

Чтобы всё работало, исходные коды в src поддиректории должны располагаться в соответствии с именами их package.

Пример результата выполнения:

D:\tmp\1>ant

Buildfile: build.xml

init:

[mkdir] Created dir: D:\tmp\1\build

compile:

[javac] Compiling 1 source file to D:\tmp\1\build

dist:

[mkdir] Created dir: D:\tmp\1\dist\lib

[jar] Building jar: D:\tmp\1\dist\lib\MyProject-20070815.jar

BUILD SUCCESSFUL

Total time: 3 seconds


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.005 сек.)