Flex AsDoc 完整版
Flex 生成AsDoc用的是SDK自带的asdoc.exe工具
生成AsDoc文档的方式有两种:ant或者FlashBuilder 外部配置工具
方法一:外部配置工具
新增一个外部配置工具。过程例如以下:
配置完毕后,直接单击执行button就自己主动生成AsDoc文档了。
(注:这样的方式生成的AsDoc,main-title和window-title參数会出现中文乱码,眼下没有解决。
ANT方式不会有乱码。)
这里核心的部分就是asdoc.exe执行參数。经常使用參数说明:
參数名称 |
參数功能 |
-locale |
资源类型(英文:en_US,中文:zh_CN…) |
-doc-classes path-element[…] |
指定须要被输出成文档的类文件(一般用doc-source指定要生成文档的源代码文件夹),这些类文件必须放在资源路径下[默认參数] 该參数用法等同于compc组件编译器的-include-classes參数 |
-doc-namespaces uri manifest |
要求被输出成文档的类文件URI列表。这些类文件必须放在资源路径下。 必须包括至少一个URI并指出命名空间内容的明白位置 |
-doc-sources path-element […] |
须要被输出成文档的文件文件夹,而且其子文件夹也会被递归输出 |
-source-path path-element […] |
源代码所在路径(不太明确他和-doc-source的差别。发现不指定也能正常导出) |
-exclude-classes string |
不须要被输出的类文件列表,必须指定类名 |
-exclude-dependencies true|false |
决定是否全部的相关类都会输出。假设设true,与输出类相关的类不回被输出。 默认值为false |
-footer string |
文档中HTML页面底部的显示信息 |
-left-frameset-width int |
控制文档左边文件夹宽度的整数值。你能够依据你的包名来改变这个值 默认值是210px |
-main-title string |
文档中HTML页面头部显示信息, 默认值是”API Documentation”. |
-output string |
输出文档的文件夹名. 默认值 “asdoc-output”. |
-package name “description” |
输出文档中相应的包名。你能够指定一个以上的包,建议用-package-description-file方便点 |
-package-description-file path-element |
包结构描写叙述文件(见附件:packageDes.xml) |
-library-path |
AsDoc用到的库的路径 |
-keep-xml |
When true, |
以下是我生成SWC库的asdoc.exe參数配置:
-locale zh_CN
-doc-sources src
-library-path+="D:\Program Files\Adobe\Adobe Flash Builder 4.7 (64 Bit)\sdks\4.6.0\frameworks\libs\air"
-footer "AsDocLib的帮助文档"
-main-title "AsDocLib帮助文档"
-left-frameset-width 200
-window-title "AsDocLib帮助文档"
-package-description-file packageDes.xml
-keep-xml
(注:lib库中引用AIR库,生成AsDoc会报错,须要增加:-library-path+="D:\ProgramFiles\Adobe\Adobe Flash Builder 4.7 (64 Bit)\sdks\4.6.0\frameworks\libs\air")
packageDes.xml文件内容例如以下:
<overviews>
<packages>
<package name="com.asdoc.test.components">
<shortDescription>
<![CDATA[组件源代码包]]>
</shortDescription>
<description>
<![CDATA[AsDocLib的组件包]]>
</description>
</package>
<package name="com.asdoc.test.skins">
<shortDescription>
<![CDATA[组件皮肤包]]>
</shortDescription>
<description>
<![CDATA[AsDocLib的组件皮肤包]]>
</description>
</package>
<package name="com.asdoc.test.utils">
<shortDescription>
<![CDATA[组件工具类]]>
</shortDescription>
<description>
<![CDATA[AsDocLib的组件工具类]]>
</description>
</package>
</packages>
</overviews>
方法二:ANT方式生成AsDoc
ANT方式生成AsDoc事实上是将第一种方式弄成脚本化编译。
在libprojectsrc文件夹以下加上build.xml和build.properties(用过ant脚本化编译的人都知道)
build.xml内容例如以下:
<? xml version="1.0"?>
<!--
版权全部 甘训奏 谢谢光临 (我不会告诉你是SDK地下的asdoc里面拷贝的)
默认运行 main target
-->
<project name="ASDocs" default="main" basedir=".">
<!--配置属性-->
<property file="build.properties" />
<property name="lenient" value="true"/>
<property name="flexlib" location="${FLEX_HOME}/frameworks"/>
<!--main target 依赖 clean 和 doc target-->
<target name="main" depends="clean,doc" description="Clean build of all ASDocs"/>
<!--clean target 清除AsDoc输出文件夹-->
<target name="clean" description="Cleans all ASDocs">
<delete dir="${OUTPUT_DIR}"/>
<echo>清除${OUTPUT_DIR}</echo>
</target>
<!--doc target 生成AsDoc-->
<target name="doc">
<condition property="asdoc.jvm.args" value="-Xmx512m">
<os family="windows"/>
</condition>
<condition property="asdoc.jvm.args" value="-Xmx1024m">
<os family="mac"/>
</condition>
<condition property="asdoc.jvm.args" value="-Xmx512m">
<os family="unix"/>
</condition>
<available property="flexTasksJar" value="${FLEX_HOME}/lib/flexTasks.jar" file="${FLEX_HOME}/lib/flexTasks.jar"/>
<available property="flexTasksJar" value="${FLEX_HOME}/ant/lib/flexTasks.jar" file="${FLEX_HOME}/ant/lib/flexTasks.jar"/> <!-- Load the <asdoc> task. We can't do this at the <project> level -->
<!-- because targets that run before flexTasks.jar gets built would fail. -->
<taskdef resource="flexTasks.tasks" classpath="${flexTasksJar}"/> <!-- Call asdoc to generate dita xml files -->
<!-- 这里就是调用asdoc.exe运行脚本化编译了。对了 fork="true"会导致控制台中文乱码。别问为什么,我也不知道。 -->
<asdoc output="${OUTPUT_DIR}" lenient="true" failonerror="true" warnings="false" strict="true" locale="en_US" fork="false" keep-xml="true">
<!-- asDoc Infomation -->
<window-title>asDocAPI标题</window-title>
<main-title >asDocAPI文档</main-title>
<footer>asDoc API 页脚 版权全部ganxunzou</footer> <!-- top level class to include in asdoc --> <!-- source path for asdoc 依据文件夹生成AsDoc-->
<compiler.source-path path-element="src"/> <doc-sources path-element="src"/>
<!-- namespaces to include in asdoc -->
<!-- 或者用这样的,依据清单文件生成AsDoc。 这样的方式不太好,没有在清单文件的AsDoc不会生成。
清单文件一般写组件。不会增加皮肤,然后你懂的。AsDo文档里面没有皮肤
-->
<!--
<doc-namespaces uri="library://ns.myasdoc.com/flex/myasdoc"/>
<namespace uri="library://ns.myasdoc.com/flex/myasdoc" manifest="my-manifest.xml"/>
--> <namespace uri="library://ns.adobe.com/flashx/textLayout" manifest="${flexlib}/projects/textLayout/manifest.xml"/> <!-- namespace declaration for asdoc --> <namespace uri="http://www.adobe.com/2006/airmxml" manifest="${flexlib}/projects/airframework/manifest.xml"/>
<namespace uri="http://www.adobe.com/2006/airspark" manifest="${flexlib}/projects/airspark/manifest.xml"/>
<namespace uri="http://www.adobe.com/2006/rpcmxml" manifest="${flexlib}/projects/rpc/manifest.xml"/>
<namespace uri="http://ns.adobe.com/2009/mx-mxml" manifest="${flexlib}/projects/mx/manifest.xml"/>
<namespace uri="http://www.adobe.com/2006/advancedgridsmxml" manifest="${flexlib}/projects/advancedgrids/manifest_advancedgrids.xml"/>
<namespace uri="http://www.adobe.com/2006/charts" manifest="${flexlib}/projects/charts/manifest_charts.xml"/> <namespace uri="http://www.adobe.com/2006/mxml" manifest="${flexlib}/mxml-manifest.xml"/>
<namespace uri="library://ns.adobe.com/flex/spark" manifest="${flexlib}/projects/spark/manifest.xml"/>
<namespace uri="library://ns.adobe.com/flex/mx" manifest="${flexlib}/mxml-manifest.xml"/>
<namespace uri="library://ns.adobe.com/flex/spark-mobilecomponents" manifest="${flexlib}/projects/mobilecomponents/manifest.xml"/>
<namespace uri="library://ns.adobe.com/flex/spark-dmv" manifest="${flexlib}/projects/spark_dmv/manifest_spark_dmv.xml"/> <library-path dir="libs" includes="*.swc" append="true"/>
<library-path dir="${FLEX_HOME}/frameworks/libs" includes="*.swc" append="true"/>
<library-path dir="${FLEX_HOME}/frameworks/libs/mobile" includes="*.swc" append="true"/>
<library-path dir="${FLEX_HOME}/frameworks/libs/automation" includes="*.swc" append="true"/> <external-library-path dir="${flexlib}/libs/air">
<include name="airglobal.swc" />
</external-library-path>
<external-library-path dir="${flexlib}/libs">
<include name="framework.swc" />
</external-library-path>
<!-- lib中增加AIR库,必须加上以下两个,要不然你调试去吧 -->
<external-library-path dir="${flexlib}/libs/air">
<include name="airframework.swc" />
</external-library-path>
<external-library-path dir="${flexlib}/libs/air">
<include name="airspark.swc" />
</external-library-path>
<jvmarg line="${asdoc.jvm.args}"/>
<define name="CONFIG::debug" value="false"/>
<define name="CONFIG::release" value="true"/>
<define name="CONFIG::FLASH_10_1" value="false"/>
<define name="CONFIG::LOGGING" value="false"/>
<define name="CONFIG::performanceInstrumentation" value="false"/>
</asdoc>
</target>
</project>
Build.properties文件内容例如以下:
# 设置到您的Flex SDK的所在路径
FLEX_HOME=D:/Program Files/Adobe/Adobe Flash Builder 4.7 (64 Bit)/sdks/4.6.0 # 定位到您的项目源代码的位置
# {$basedir} 是Ant默认支持的变量
SOURCE_DIR =${basedir}/src # 定位到您的Lib路径,假设存在的话
#LIBS_DIR =${basedir}/libs # 设定SWF的输出位置
OUTPUT_DIR = ${basedir}/outasdoc # 是人都知道SDK版本号
SDK_VERSION = 4.6.0.23201
LOCALE = zh_CN
然后选中build.xml右键 -- 调试 – Ant构建就OK了
Lib SWC AsDoc 提示
发现SWC复制到AIR里面,AsDoc不提示,解决的方法:
第一步:在生成AsDoc的时候,加上-keep-xml參数。
第二步:src文件夹下。新建一个包叫asdocs(名字随便)。然后拷贝tempdita下的 packages.dita和自己组件相应的xml文件到asdocs文件夹下。
第三步:项目右键 – 属性 – Flex库构建路径—资源,勾选asdocs目录。又一次编译swc就支持AsDoc了
CSDN 不能上传附件,挺烦的。
AsDocLib的源代码:http://download.csdn.net/detail/ganxunzou/8172865
Flex AsDoc 完整版的更多相关文章
- flexbox-CSS3弹性盒模型flexbox完整版教程
原文链接:http://caibaojian.com/flexbox-guide.html flexbox-CSS3弹性盒模型flexbox完整版教程 A-A+ 前端博客•2014-05-08•前端开 ...
- 如何安全的将VMware vCenter Server使用的SQL Server Express数据库平滑升级到完整版
背景: 由于建设初期使用的vSphere vCenter for Windows版,其中安装自动化过程中会使用SQL Server Express的免费版数据库进行基础环境构建.而此时随着业务量的增加 ...
- Android版的菜谱客户端应用源码完整版
Android版的菜谱客户端应用源码完整版,这个文章是从安卓教程网转载过来的,不是本人的原创,希望能够帮到大家的学习吧. <ignore_js_op> 152936qc7jdnv6vo0c ...
- sed实例精解--例说sed完整版
原文地址:sed实例精解--例说sed完整版 作者:xiaozhenggang 最近在学习shell,怕学了后面忘了前面的就把学习和实验的过程记录下来了.这里是关于sed的,前面有三四篇分开的,现在都 ...
- 转贴 IT外企那点儿事完整版
转贴 IT外企那点儿事完整版 第一章:外企也就那么回儿事(http://www.cnblogs.com/forfuture1978/archive/2010/04/30/1725341.html) 1 ...
- C#.Net 上传图片,限制图片大小,检查类型完整版
C#.Net 上传图片,限制图片大小,检查类型完整版 源代码: 处理图片类,如检查图片大小,按宽度比例缩小图片 public class CImageLibrary{ public enum Va ...
- office2016 软件全集 官方下载免费完整版(含破解文件)不含垃圾软件 win10完美激活
office2016官方下载免费完整版是新一代办公软件,office2016官方下载免费完整版已经分享到下面,office2016官方下载免费完整版包括了Word.Excel.PowerPoint.O ...
- 老王Python培训视频教程(价值500元)【基础进阶项目篇 – 完整版】
老王Python培训视频教程(价值500元)[基础进阶项目篇 – 完整版] 教学大纲python基础篇1-25课时1.虚拟机安装ubuntu开发环境,第一个程序:hello python! (配置开发 ...
- thinkPHP3.2.3完整版 在sae上面的部署
第一步: thinkPHP3.2.3完整版,目录结构如下 第二步:在新浪sae上面创建一个新应用 第三步:用svn down,下来会有两个文件:index.php.config.ya ...
随机推荐
- 函数和指针 C++
一.用函数指针变量调用函数. 指针变量也可以指向一个函数,一个函数在编译时被分配给一个入口地址.这个函数入口地址就称为函数的指针.可以用一个指针变量指向函数,然后通过该指针变量调用此函数. 定义指向函 ...
- 【BZOJ1196】【HNOI2006】公路修建问题
[描述] OI island是一个非常漂亮的岛屿,自开发以来,到这儿来旅游的人很多.然而,由于该岛屿刚刚开发不久,所以那里的交通情况还是很糟糕.所以,OIER Association组织成立了,旨在建 ...
- python学习-字符串 列表 元祖
目录 Python翻转字符串(reverse string) 简单的步长为-1, 即字符串的翻转(常用) 递归反转 借用列表,使用reverse()方法 字符串常用操作 index split 切片 ...
- SQL Server阻塞诊断
在数据仓库维护过程中,经常会出现定时更新程序和查询SQL发生冲突而引起阻塞的情况,需要进行SQL Server诊断. SQL Server诊断一般会用到2个视图:sys.sysprocesses(系统 ...
- How to solve a login problem of SQL Server?
Sometimes when we attempting to login the SQL Server 20xx Management Studio, when we type in the cor ...
- JS网站图集相册特效
JS网站图集相册特效是一款可以直接使用鼠标进行前后导航,也可以通过缩略图来切换图片. 在线演示本地下载
- EF Code First连接现有数据库
作为一个初入学习.net MVC4 的新手,想写一写今天碰到的问题,做一个总结. 首先我想利用EF Code First来连接我现有数据库,而不是通过EF Code First来自动生成数据库和表. ...
- matplotlib显示中文字体
原始地址:http://zanyongli.i.sohu.com/blog/view/195716528.htm matplotlib 1.0.0版 对于3.0的可能不太适用,要注意语法结构! C:/ ...
- 基于Linux/C++简单线程池的实现
我们知道Java语言对于多线程的支持十分丰富,JDK本身提供了很多性能优良的库,包括ThreadPoolExecutor和ScheduleThreadPoolExecutor等.C++11中的STL也 ...
- timeval的时间转换成毫秒之后多大的数据类型可以装下
struct timeval { long tv_sec; /*秒*/ long tv_usec; /*微秒*/ }; 秒的定义为long,为了防止溢出,转换成毫秒之后保存在long long中