分发as3类和包的最佳方法是什么?

时间:2011-05-18 08:25:43

标签: actionscript-3 class open-source distribution sharing

我有一个小框架,我想把它放在那里。我希望将这些类导出为单个文件。

我知道有一种SWC格式,但最近没有关于如何导出构建此内容的信息,我觉得这种格式可能已经过时了。

1 个答案:

答案 0 :(得分:8)

SWC file只是一个ZIP文件(扩展名已重命名),至少包含一个SWF影片(库的已编译字节码)和一个XML文件,提供有关SWF内容的提示。但是,由于SWC文件只是一个ZIP文件,您可以添加其他信息;最常见的是including ASDoc output然后可以由IDE(例如Flash Builder 4)解析并显示为内联文档。

开发人员首选SWC文件,因为它们是自包含的构建依赖项。这使得它们易于管理,因为您只需将单个SWC文件拖放到项目中即可进行编译。它们也是首选,因为它们不鼓励初级开发人员尝试对库源代码进行任何修改(此时它不再是第三方库)。

可以使用Adobe COMPC实用程序编译SWC文件;大多数Flash IDE(Flash BuilderFDTFlashDevelop)支持从GUI编译SWC;但您也可以从命令行ANTMaven编译SWC。

创建Framework的SWC文件时要注意的一件事是外部化项目所具有的任何构建依赖项。例如,假设您的框架使用GreenSock Library;而不是编译整个框架,包括将GreenSock代码编译到单个SWC文件中,您应该编译SWC,excluding all the code contained in your project's dependencies(即:greensock.swc),然后分发库的SWC文件和greensock.swc。文件 - 这样,使用您的Framework的开发人员将不会被迫使用您编译的GreenSock库版本。这个实践的一个例子可以在RobotLegs framework中找到,它分发了robotlegs.swc和swiftsuspenders.swc。

我写了一篇关于managing build dependencies的博文,可能会提供有关该主题的相关阅读。

最后,我建议在公共SCM解决方案上托管您的Libraries源代码;例如GitHubGoogle Code,如果源代码需要引用,开发人员可以读取(并签出)源代码 - 它还为问题管理和文档提供了良好的中心位置。