【问题标题】:Why won't asdoc generate?为什么 asdoc 不会生成?
【发布时间】:2013-12-11 22:43:40
【问题描述】:

我现在正在尝试生成一个 asdoc。该项目是两个班。一个类扩展View,另一个是自定义Event 类。真的,真的很简单。对于我的一生,我无法让 asdoc 正确生成。我尝试了很多不同的命令,我忘记了我实际尝试过和没有尝试过的命令。

每次编译时,我都会得到以下输出:

/Users/jjanusch/dev/workspaces/AIR/library/src/com/vuria/ui/views/PanelViewBase.as(41): col: 37 Error: The definition of base class View was not found.

    public class PanelViewBase extends View
                                       ^

/Users/jjanusch/dev/workspaces/AIR/library/src/com/vuria/ui/views/PanelViewBase.as(204): col: 31 Error: Method marked override must override another method.

        override protected function createChildren():void {
                                    ^

/Users/jjanusch/dev/workspaces/AIR/library/src/com/vuria/ui/views/PanelViewBase.as(246): col: 32 Error: Method marked override must override another method.

        override public function set navigationContent(value:Array):void {
                                     ^

/Users/jjanusch/dev/workspaces/AIR/library/src/com/vuria/ui/views/PanelViewBase.as(262): col: 32 Error: Method marked override must override another method.

        override public function set actionContent(value:Array):void {
                                     ^

/Users/jjanusch/dev/workspaces/AIR/library/src/com/vuria/ui/views/PanelViewBase.as(279): col: 31 Error: Method marked override must override another method.

        override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void {
                                    ^

这是我正在使用的 bash 脚本

#!/bin/bash
docSource="/Users/jjanusch/dev/workspaces/AIR/library/src"
docOut="/Users/jjanusch/dev/workspaces/AIR/library/documentation"
libraryPath="/Applications/Adobe Flash Builder 4.7/sdks/4.11 AIR 3.9/frameworks/libs"
packageDescriptions="/Users/jjanusch/dev/workspaces/AIR/library/asdocs-package-descriptions.xml"

"$asdoc" \
    -doc-sources "$docSource" \
    -output "$docOut" \
    -lenient \
    -compiler.library-path "$libraryPath" \
    -package-description-file "$packageDescriptions" \
    -keep-xml=true \
    -skip-xsl=true

PanelViewBase 类中涉及很多 Flex 类,但唯一的移动组件是 View。我一直找不到任何无法记录移动课程的类似问题。有谁知道为什么这不起作用?我也尝试过手动将每个 swc 包含为一个库

编辑:值得注意的是这是 Flex 4.11 和 AIR 3.9。此外,Grant Skinner 的 Asdocr 应用程序也因同样的错误而失败。

这里也是该类的导入,只是为了更好的衡量:

import com.vuria.events.ViewEvent;

import flash.events.MouseEvent;

import mx.core.UIComponent;
import mx.graphics.SolidColor;

import spark.components.Button;
import spark.components.Group;
import spark.components.View;
import spark.primitives.Rect;
import spark.primitives.RectangularDropShadow;

【问题讨论】:

  • 看起来在编译代码时出现问题 - 您是否尝试将 flex sdk 添加为源/lib 路径之一?自从我不得不这样做以来已经有很多年了,所以我手头没有语法。尝试在一个不扩展任何内容的简单文件上运行 asdoc,看看是否遇到同样的问题
  • @divillysausages 我试过了。目前,我将其设置为-compiler.library-path 选项,但我也尝试过从-library-path-source-path-doc-sources 的所有内容。它确实适用于一个简单的项目,但我无法让它与任何与移动 sdk 相关的东西一起工作
  • 尝试在一个裸文件上运行它,至少我们知道这是否是问题所在
  • @divillysausages 只是在编辑我的评论。我已经试过了。适用于任何不包含移动组件的项目。我的猜测是,显然,这些组件没有被包括在内。我什至尝试过手动添加这些组件
  • 来自这里:help.adobe.com/en_US/flex/using/…,一些事情要尝试:1)“默认情况下,ASDoc 工具根据 flex\frameworks\libs 中的库 SWC 文件编译其输入文件” - 是那里的火花库,或其他地方? 2) 尝试将-exclude-dependencies 设置为true 3) 尝试使用-exclude-[classes/dependencies/sources] 4) 尝试添加-lenient 选项(忽略错误)

标签: flash apache-flex flex-mobile asdoc


【解决方案1】:

我尝试使用 asdoc 生成 Starling 文档,但没有任何乐趣,结果遇到了这个问题。

我在requestContext3D() 调用中收到了"Incorrect number of arguments"(即基本 Flash,例如 asdoc 没有使用正确的 Flex/AIR 版本来生成)。

http://help.adobe.com/en_US/flex/using/WSd0ded3821e0d52fe1e63e3d11c2f44bc36-7ffa.html 和链接http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf69084-7a92.html 之后,对属性有更好的解释。

什么对我有用(或/或):

  • 添加-strict=false
  • 指定目标玩家,然后将其链接到正确的 playerglobal.swc:-target-player=12.0

真正帮助我的一件事是转储默认配置,因此我可以看到 asdoc 的所有默认值。您可以通过以下方式执行此操作:

asdoc -dump-config config.xml

翻阅这个文件,我发现:

<target-player>11.1</target-player>

所以在添加 requestContext3D 的第二个参数之前,它是为 Flash 播放器 11.1 链接的,因此是我的错误。

在您的情况下,我还看到默认框架设置为 halo,而不是 spark,因此更改它可能会有所帮助

【讨论】:

    【解决方案2】:

    添加编译器 arg +configname=airmobile 并将移动主题 swc 添加到库路径。 -library-path+=${flexlib}/themes/Mobile/mobile.swc

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-12-12
      • 1970-01-01
      • 1970-01-01
      • 2010-09-20
      • 2019-10-25
      • 2017-04-01
      • 1970-01-01
      相关资源
      最近更新 更多