我似乎无法弄清楚为什么每次尝试在Flash Builder 4中编译ASDoc时仍然继续出现此错误。
我确实在ASDoc中成功创建了asdoc-output文件夹,但是它不完整。仅显示toplevel.xml和tempdita文件夹。
这是我的控制台上显示的错误
Error at xsl:choose on line 46 of processHTML.xslt: java.io.FileNotFoundException: /Users/NEWYORK/abritez/Documents/workspaces/ate/ATE_Shell/asdoc-output/index.tmp (No such file or directory) at xsl:apply-templates (file:/Users/NEWYORK%5Cabritez/Documents/workspaces/ate/ATE_Shell/asdoc-output/tempdita/processHTML.xslt#25) processing /html Transformation failed: Run-time errors were reported
Line 46 is in ProcessHTML.xslt is the initial <xsl:choose>
in the element bellow.
<xsl:template match="html">
<xsl:copy-of select="$noLiveDocs"/>
<xsl:choose>
<xsl:when test=".//frameset">
<xsl:copy-of select="$frameDocType"/>
</xsl:when>
<xsl:otherwise>
<xsl:copy-of select="$docType"/>
</xsl:otherwise>
</xsl:choose>
<xsl:choose>
<xsl:when test="$isLiveDocs"/>
<xsl:otherwise>
<xsl:value-of select="$markOfTheWeb"/>
</xsl:otherwise>
</xsl:choose>
<xsl:element name="html">
<xsl:apply-templates/>
<xsl:copy-of select="$copyrightComment"/>
<xsl:value-of select="$newline"/>
</xsl:element>
</xsl:template>
我去了外部工具配置并添加了asdoc的位置
/Applications/Adobe Flash Builder 4/sdks/flex_sdk_4.1/bin/asdoc
then i added my Working Directory
${workspace_loc:/ATE_Shell}
And lastly I inserted all my arguments
-lenient -source-path src -doc-sources src -external-library-path=/Users/NEWYORK\abritez/Documents/workspaces/ate/ActivityToolkitLib/bin/ActivityToolkitLib.swc -external-library-path=/Users/NEWYORK\abritez/Documents/workspaces/ate/ATE_Template/bin/ATE_Template.swc -external-library-path=/Users/NEWYORK\abritez/Documents/workspaces/ate/AssesmentCommunicationLib/bin/AssesmentCommunicationLib.swc -external-library-path=/Users/NEWYORK\abritez/Documents/workspaces/ate/BFW_UI/bin/BFW_UI.swc -external-library-path=/Users/NEWYORK\abritez/Documents/workspaces/ate/DiagnosticReporter/bin/DiagnosticReporter.swc
UPDATE:I ended up rolling back to 3.5 and did a test application with only one method to document and got this error.
My method
package com.test
{
import mx.containers.Canvas;
public class Grouptest extends Canvas
{
public function Grouptest()
{
super();
}
/**
* Hello
*
* @param value Some string
* */
public function set testMe(value:String):void
{
trace("value " + value)
}
}
}
我的错误
加载配置文件/ Applications / Adobe Flash Builder 4 / sdks / 3.5.0 / frameworks / flex-config.xml Adobe ASDoc
版本3.5.0构建12683
版权所有(c)2004-2007 Adobe Systems,Inc.保留所有权利。
错误:“”不是目录
使用“ asdoc -help”获取有关使用命令行的信息
任何帮助或指向正确方向的信息将不胜枚举。我过去曾经运行过ASDoc,所以我确定我一定会忽略一些东西。
最佳答案
众所周知,ASDoc不擅长报告错误并发出红色鲱鱼。
以下内容适用于Flex3。我认为它仍然适用于Flex 4。
要记住的主要事情是,ASDoc只执行一次通过,而编译器不(至少)执行两次。这就暴露了编译器为您隐藏的问题,通常,如果您声明某些东西是可绑定的,但没有将类设为IEventDispatcher,则编译器会在第一遍为您作弊,但是ASDoc只会失败。
另一个常见的问题是使用@see之类的标签时找不到文件。如果您将路径命名错误,则ASDoc会掉下来而不生成。
根据我的经验,最常见的第三个问题是格式错误的html标签。忘记在不接受标签的ASDoc标签中添加或添加HTML标签。
令人遗憾的是,由于ASDoc无法报告这些错误并且不能很好地处理错误,因此在不逐行浏览代码的情况下,查找问题的根源就成了一场噩梦……