这一问题涉及使用ASDoc创建文档从AS3。我不这样做,从Flex或任何东西,只是采用命令行,但一切正常和ASDoc不返回的任何错误,一些链接所得的文件被破坏。

具体地说,在所有的地方有联系性质或方法的其他部分的文件(包括在同一类),链路蜿蜒增加一倍的文件夹相对应的软件包。

例如,说我的记录 myPackage.MyClass.如果 MyClass 有一个酒店叫 MyProperty, 和某个地方,在我的文档,包括我的一个线是这样的:

@see #MyProperty

然后,该文件是正确分析和"另请参见:"链路是正确建立,但它的风向

.../output_directory/myPackage/myPackage/MyClass.html#MyProperty

其中当然,在实际文件系统只有一个 myPackage 文件夹。

相关部分的我ASDoc命令看起来是这样的:

asdoc
 -source-path .
 -doc-sources myPackage
 -output D:\dev\repository\docs\myPackage_docs
 -external-library-path "C:\Progra~1\Adobe\flex_sdk_3\frameworks\libs\player\10\playerglobal.swc"

我也许是缺少一些ASDoc论点,即将指定的基URL链接,或者沿着这些线路的东西?如果这是一个普通的错误这将是显而易见的许多人,但我找不到任何结果的问题,所以我的工作假设是,它不会发生在人运ASDoc从Flex,也许是因为一些设置我省略。

感谢任何的帮助!


在建议的TypeOneError,我尝试了不同种类的@看到的链接。我发现,这些工作的罚款:

  • @see some.package
  • @see ClassName
  • @see ClassName#property

虽然这些不工作:

  • @see #property
  • @see full.package.ClassName
  • @see full.package.ClassName#property

什么有点糟糕的是,虽然所有的导航链接工作,同增加一倍的路径发生在自动产生的种类型的链接。例如,它显示了每个方法的签名方法时返回一个类的文件,该链接是打破。

我还有看看HTML,并发现,该问题不会出现与该网页的基地址或任何东西,只是不一致的链接。因此,在一行的连续 @see 链接,他们中的一些链接到 ClassName.html 和一些链接到 package/ClassName.html, 通过的规则上所示。所有这一切,通过这种方式,是真的,不论是否正在观看的网页在框架或没有。

更多的信息,如果我想出任何东西,但想法的变通办法都是最受欢迎的。


更新: 一些更多的详细信息:我不知道我的确切SDK版本,除非它伴随着Flex3,但如果我跑ASDoc没有参数,它报告: Adobe ASDoc Version 3.3.0 build 4852.我所有Windows XP,从一批文件放在该类路径的目录。


部分方案: 所有但是我的一个问题得到了解决通过升级的4.0.0.7219beta版的Flex4SDK(和使用ASDoc分布在其中).现在,我所有的 @see 标记工作的预期。剩下的唯一问题是,到哪里,无论我有一个方法是回返一类是属于我的文档,ASDoc简单见的链接。例如,如果我有一个方法的签名是 ClassA#getB():ClassB, 然后那里就是所示的文件,该文本"ClassB"链接"packageName:ClassB.html"而不是"packageName/ClassB.html".这似乎是一个简单的错误。啧.

有帮助吗?

解决方案

ASDoc是令人沮丧,没有结束。你有没有尝试过明确添加全面包/类名@看看我.e:

@see myPackage.myClass#MyProperty

来看看是否有差别?

编辑

我跑一些测试的基础上你的调查结果和内部财产标记是为我工作。即

@看到#_dispatcher

直接链接到该财产上的网页(没有双子文件夹)。我认为你也许需要重新考虑你是如何运行的命令。例如,我的代码是设立正是如此:

/src
    /com
        /bkwld
            /fetch

我通常运行asdoc内"src":

asdoc -source-path . -doc-classes com/bkwld/fetch/Fetch

我尝试了所有这些在获取。作为他们的所有工作预期:

*  @see FetchItem
*  @see com.bkwld.utils.Logger
*  @see #_dispatcher

第一次带我来的FetchItem页、第二次带我来的记录页在不同的包装,而第三跳起来的页面向保护的方法的获取。

只是出于好奇...哪个版本的sdk你们使用?

其他提示

我猜测的问题是你行

-医生-来源myPackage

指定'.'存在,而不是'myPackage'应该得到固定的(所以让它完全相同的来源的路径)

我已经写了一个简单的Python脚本,用于修复道路是错误地输入所产生的asdoc的情况下提及上面提到的。即,如果有一个方法myMethod(v:MyClass,...) asdoc不正确地产生的链接href="../mypackage:Myclass" 脚本将解决这个问题取代:通过a/

我应该注意到,docs我产生有一个漂亮的"平"的结构,那就是,一个包有一堆类。我不知道如果修复工作与更复杂的文件结构。

无论如何,如果任何人想尝试一下剧本,我将很高兴送它。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top