8 марта 2009. Генерация документации в FDT с помощью asdoc

В Flex Builder уже встроена функция генерации документации, однако в FDT ее нет. Но это не беда, ведь при наличии самого asdoc (поставляется вместе с Flex SDK) можно без проблем сгенерировать документацию и из FDT при помощи ANT.

Конфигурирование ANT

Для начала создаем в корневой директории текущего проекта два файла: ‘build_project.properties’ и ‘build.xml’.

build_project.properties

В этом файле будут указаны все специфические настройки для текущей среды.

common.flex3dir     = /Applications/eclipse/flex_sdk_3/
common.flex3bindir  = ${common.flex3dir}/bin
common.asdoc        = ${common.flex3bindir}/asdoc
project.linked = /Users/DataGreed/Work/libraries/AS3
project.src = ${basedir}/src
project.doc = ${basedir}/doc


В качестве project.linked я указал ссылку на связаные с проектом библиотеки – если вы не используете подключаемые библиотеки, то и указывать их не нужно.

build_project.properties

<project name="testAsDoc" default="asdoc">
	<!-- импорт параметров среды -->
	<property file="${basedir}/build_project.properties"/>
	<target name="asdoc">
		<!-- удаляем старые файлы из папки документации -->
		<delete includeemptydirs="true">
			<fileset dir="${project.doc}" includes="**/*" />
		</delete>
		<!-- сздаем новые файлы документации -->
		<exec executable="${common.asdoc}"> 
		    <arg line="	-doc-sources '${project.src}' '${project.linked}' 
		    		-output '${project.doc}' 
		    		-main-title 'Test API' 
		    		-window-title 'Test API'" /> 
		</exec>
	</target>
</project>


Соответственно, если Вы не используете связанные библиотеки, то и указывать '${project.linked}' не нужно.

Генерирование документации

В панельке ANT (Window > Show view… > ANT) жмем на иконку добавления файла (плюсик под боком у муравья) и выбираем `build.xml’. Два раза кликаем на появившемся пункте `testAsDoc’, чтобы начать генерацию документации.

При желании можно сделать, чтобы документация пересобиралась при каждой компиляции проекта. Делается это в ‘Run Dialog’:

Послесловие

Все, в общем-то, довольно просто. Единственная нерешенная для меня задача – сделать так, чтобы документация не писалась для файлов из подключеных библиотек. Оба очевидных выхода (прописывание рукми exclude для каждого класса и компиляция всех библиотек в swc) выглядят неудобными и идеологически неправильными. Жаль, нет параметра для игнорирования целой директории (или хотя бы пакетов из нее) – это помголо бы решить проблему.


Тэги:

0
Разных мыслей по теме

Выразите свои мысли по теме.