我正在尝试让ASDoc Ant task正常工作:
<target name="asdoc" depends="compile">
<mkdir dir="${dist_asdocs}"/>
<asdoc
docSources="${srcdir}"
output="${dist_asdocs}"
executable="${FLEX_HOME}/bin/asdoc.exe" />
</target>当我运行它时,我从ASDoc得到类似于“错误:类型未找到或不是编译时常量: XXX”的错误。当我手动运行ASDoc时,我会这样做:"asdoc -source-path src -doc-sources src“。如果我省略了-source-path值,我会得到相同的错误...那么,我该如何让Ant任务工作呢?
发布于 2008-10-14 00:34:47
嗯,我不能测试它,因为它只为Windows实现(尝试执行asdoc.exe)。
但我已经为asdoc缺少ant任务编写了自己的解决方案:
<exec executable="${FLEX_HOME}/bin/asdoc" dir="${basedir}">
<arg value="-source-path"/>
<arg path="${basedir}/src"/>
<arg value="-doc-sources"/>
<arg path="${basedir}/src"/>
<arg value="-output"/>
<arg path="${DOC_DIR}"/>
<arg value="-main-title"/>
<arg path="${ant.project.name} Documentation"/>
<arg line="-library-path+=${basedir}/libs"/>
</exec>当然,如果您使用的是windows,则必须将可执行文件更改为asdoc.exe。我不知道您是否也必须将all /替换为\,或者ant是否会为您做这件事。如果您不使用库路径中不存在的任何.swcs,则可以省略最后一个参数。或者至少您必须将其更改为指向正确的目录。
编辑:我看过source code of the asdoc-task,它本质上和我的exec-task一样,它只允许命令行参数的一小部分。
我还在没有使用source-path参数的情况下测试了我的解决方案,令我惊讶的是它仍然有效。我做了一些进一步的测试,我发现了:
当未指定源路径时,asdoc(.exe)会将src作为默认值。因此,如果你使用该约定,asdoc-task通常可以工作(例如,Flex Builder可以做到这一点),但如果你不这样做,它就会失败。
因此,要使用asdoc-task,您必须将源目录命名为src。
发布于 2009-02-11 16:35:17
我建议不要使用asdoc ant任务,因为自从我第一次发布它以来,我还没有进一步开发它。正如Simon所提到的,它只支持可能的一小部分,所以您最好使用exec任务。
https://stackoverflow.com/questions/198975
复制相似问题