Apache Ant

Apache Ant (англ. ant — муравей) — утилита для автоматической сборки программ из исходного кода. Написана на Java.

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

Программа распространяется под лицензией Open Source, была создана в рамках проекта Jakarta и на сегодняшний день стала самостоятельным проектом первого уровня при Apache.

Название Ant является акронимом — «Another Neat Tool».

Первая версия была разработана Джеймсом Дунканом Дэвидсоном (James Duncan Davidson), который нуждался в утилите подобной make, разрабатывая первую референтную реализацию J2EE.

Содержание

Описание

В отличие от make утилита Ant полностью независима от платформы, если на применяемой системе как минимум установлена рабочая среда JavaJRE. Управление происходит посредством XML-сценария, также называемого Build-файлом. В первую очередь этот файл содержит определение проекта, состоящего из отдельных целей (Targets). Цели сравнимы с функциями в языках программирования и содержит вызовы команд-заданий (Tasks). Task — это неразделимая, атомарная команда.

Между целями Targets могут быть определены зависимости, которые определяют порядок выполнения отдельных целей. Если была определена цель, прямо или косвенно зависимая от всех других необходимых целей, то достаточно вызвать эту цель для выполнения всех других. Такая цель называется default (по умолчанию).

Так как сценарий составляется в формате XML, то соответственно знаки разделения и пробелы применяемые в различных платформах никак не влияют на выполнение действий.

Кроме того, Ant имеет чётко определённые интерфейсы для создания собственных заданий (Tasks) в виде Java-программы.

Часто применяемые задания (Tasks)

Ниже указан неполный перечень заданий с кратким описанием. Актуальная версия программы 1.6.5 содержит около 150 Tasks.

  • Javac компилирует Java-код.
  • Copy копирует файлы.
  • Delete удаление файлов и директорий.
  • JUnit автоматический запуск юнит-тестов.
  • Move перемещает файлы и директории
  • Exec для запуска системных программ и выполнения внешних команд.
  • Zip создание архива в формате Zip
  • CVS выполнение CVS-команд.
  • Mail посылка электронной почты.
  • Replace замещение фрагментов текста в файлах.
  • Xslt трансформация XML-файлов в другие форматы.

Пример

 <target name="build" depends="clean" description="Builds the application">
   <mkdir dir="${build.classes}"/>
   
   <javac srcdir="${java.dir}"
          destdir="${build.classes}"
          debug="false"
          deprecation="true"
          optimize="true" >
     <classpath refid="classpath" />
   </javac>
   
   <copy todir="${build.classes}">
     <fileset dir="${java.dir}">
       <include name="**/*.properties" />
       <include name="**/*.gif" />
     </fileset>
   </copy>
   <jar jarfile="${build.lib}/${name}.jar" manifest="${manifest}">
     <fileset dir="${build.classes}"/>
   </jar>
 </target>
 <target name="clean" description="Removes all temporary files">
   <delete dir="${build.dir}" />
   <delete dir="${dist.base}" />
   <delete dir="${defaultdist.dir}" />
   <delete> 
     <fileset dir="." includes="**/*~" defaultexcludes="no"/>
   </delete>
 </target>

См. также

  • Apache Maven

Ссылки

 
Начальная страница  » 
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ы Э Ю Я
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9 Home