3

Flash Builder 4 で ASDoc をコンパイルしようとするたびにこのエラーが発生し続ける理由がわかりません。

ASDoc が asdoc-output フォルダーを作成することに成功しましたが、不完全です。表示されるのは toplevel.xml と tempdita フォルダーだけです。

これはコンソールに表示されるエラーです

xsl でのエラー: processHTML.xslt の 46 行目の選択:
  java.io.FileNotFoundException:
  /Users/NEWYORK/abritez/Documents/workspaces/ate/ATE_Shell/asdoc-output/index.tmp (そのようなものはありません
  ファイルまたはディレクトリ)
  xsl:apply-templates (ファイル:/Users/NEWYORK%5Cabritz/Documents/workspaces/ate/ATE_Shell/asdoc-output/tempdita/processHTML.xslt#25)
     /html の処理
変換に失敗しました: 実行時エラーが報告されました

46 行目は ProcessHTML.xslt にあり<xsl:choose>ます。要素の下のイニシャルです。

<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

次に、作業ディレクトリを追加しました

${workspace_loc:/ATE_Shell}

そして最後に、すべての引数を挿入しました

-寛大な
-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

更新: 最終的に 3.5 にロールバックし、文書化するメソッドを 1 つだけ使用してテスト アプリケーションを実行したところ、このエラーが発生しました。

私の方法

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 Adob​​e ASDoc
バージョン 3.5.0 ビルド 12683
Copyright (c) 2004-2007 Adob​​e Systems, Inc. 無断複写・転載を禁じます。

エラー: '' はディレクトリではありません
コマンド ラインの使用方法については、「asdoc -help」を使用してください。

正しい方向への助けや指摘は非常に高く評価されます。過去に ASDoc を実行したことがあるので、何かを見落としているに違いないと確信しています。

4

3 に答える 3

2

ASDoc は、エラーを報告し、ニシンを与えるのが苦手なことで有名です。

以下はFlex 3に適していました.Flex 4にもまだ適していると思います.

覚えておくべき主なことは、(少なくとも) 2 つのパスを行うコンパイラとは異なり、ASDoc は 1 つのパスのみを行うことです。これにより、コンパイラが隠している問題が明らかになります。古典的に、何かをバインド可能として宣言し、クラスを IEventDispatcher にしない場合、コンパイラは最初のパスで不正行為を行いますが、ASDoc は単に失敗します。

もう 1 つの一般的な問題は、@see などのタグを使用するとファイルが見つからないことです。パスに間違った名前を付けると、ASDoc はフォールオーバーして生成されませんでした。

私の経験で 3 番目に多い問題は、不正な形式の html タグです。を追加するのを忘れる

または、HTML タグを受け入れない ASDoc タグに追加します。

悲しいことに、ASDoc はこれらのエラーを報告するのがとても下手で、間違いを適切に処理しないため、コードを 1 行ずつ調べずに問題がどこにあるかを見つけるのは非常に悪夢です...

于 2010-09-28T10:47:45.340 に答える
1

4を扱っていることは承知していますが、3.5でも同じ問題に遭遇したため、次のことが当てはまる可能性があります。

これは、asdocs フォルダー、さらに重要なことに asdocs/templates フォルダーが Flex SDK の 3.5 ディストリビューションに含まれていないために発生します。asdocs を 3.4 または別の 3.x SDK からコピーするだけで機能します。

http://michael.omnicypher.com/2011/05/flex-35-and-using-asdocs.html

于 2011-05-14T02:32:37.817 に答える
1

私はこれと同じ問題を抱えていました。私は最終的に、この同じ問題に関するランダムな投稿を見つけて、それを修正しました。

asdoc 生成による別の時間のブラック ホール

[asdoc] [致命的なエラー] toplevel.xml:90:2: 要素のコンテンツは、整形式の文字データまたはマークアップで構成する必要があります。

[asdoc] エラー: toplevel.xml を作成できませんでした: 要素のコンテンツは、整形式の文字データまたはマークアップで構成されている必要があります。

これは、パーサーが気に入らない asdoc コメントのランダムな文字が原因です。私の場合、@ と一緒に < または > のカップル。

于 2011-05-24T22:38:35.330 に答える