我正在AS3中创建一个库。在库中,我使用了一堆不需要暴露给我的lib最终用户的类/包。我想只暴露其中一个类。
我想我的问题是:
1)图书馆如何在AS3中共同分发?
2)AS3中是否存在开发人员可以包含的.jar等效项,但只能访问/知道我声明为公开的类?
谢谢!
答案 0 :(得分:5)
AS3库称为SWC。与JAR一样,它们只是ZIP存档,包含一些元数据。您可以使用Flash Builder库项目或Flex SDK中的mxmlc编译器来构建库,例如here所述。
良好做法是分发SWC或源代码。当然还有docs或自述文件。
答案 1 :(得分:3)
是否可以在不使用Flex框架的情况下创建SWC文件? 我只想要裸骨AS3。
是的,我们并没有被迫使用flex,事实上Adobe甚至不再正式支持Flex作为他们的产品,因为它现在是一个开源的apache项目。 http://blogs.apache.org/flex/
Flash的编译器本身是开源的,可以免费使用,这就是为什么有许多第三方IDE和开发工具也可以生成SWC库的原因。编译器只需要一个zip中的特殊xml文件来生成swc。因此,如果您想避免手动执行此规范,只需选择一种gui方式即可。
最流行的一种开源gui方式我认为Flash Develop http://www.flashdevelop.org/有一个插件可以做你想要的。 http://www.flashdevelop.org/community/viewtopic.php?f=4&t=2987 强烈推荐这个IDE,但是如果你需要更多跨平台的东西,我推荐Intellij Idea这是一个很棒的as3和java ide,因为你知道什么是jar文件。
“只能访问/知道我宣布为公开的课程吗?”
你的swc中的类与你的主项目的一部分没有什么不同,所以如果你用公共或私有创建一个swc,它将以同样的方式公开或私有。老实说,虽然社区中的博客和存储库共享的大多数代码都只是原始* .as文件,但是对于团队中的共享库来说,swc很方便,可以使它更有条理。