首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用COMPC编译SWC,不包括第三方库

使用COMPC编译SWC,不包括第三方库
EN

Stack Overflow用户
提问于 2009-07-17 12:37:33
回答 2查看 5.8K关注 0票数 3

我有一个自己构建的代码库。它依赖于另外两个(第三方)库。目前,当我将该库编译成swc时,这两个第三方库都包含在内。我正在寻找一种方法来编译我的代码库,而不是将它们包含在编译后的swc中。

这显然意味着任何使用我的库的人都需要这两个库,但我更喜欢这种方式。我没有使用Flex/Flashbuilder,我知道它允许您选择要包含在swc中的类。

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-07-19 12:49:09

-external-library-path+=my.swc是答案,尽管不需要使用- for shared-library。使用此参数允许您指定将在编译中使用但不放入swc中的代码。显然,当使用swc时,仍然需要这个被排除的clode。

特别要注意的是,与其他参数不同,-外部库路径使用+=而不是=。通过使用just =,您将打破对玩家低级类和添加的任何其他外部库的引用。

如果您正在使用带有Ant的FlexTasks,那么您的目标可能如下所示:

代码语言:javascript
复制
<target name="compileToSWC">
    <compc 
        output="${bin}/${SWCName}">
            <source-path path-element="${src}"/>
            <!-- Source to include in SWC -->
            <include-sources dir="${src}" includes="*"/>
            <!-- Libs to exclude from the swc - Note append="true" which is equivillant to using +=-->
            <external-library-path file="${thirdparty.libs}/SomeLib.swc" append="true"/>
            <external-library-path file="${thirdparty.libs}/SomeOtherLib.swc" append="true"/>
    </compc>
</target>

您还可以将外部库路径指向一个文件夹,在这种情况下,它将包含其中的所有swcs。请注意,如果您遵循Adobe的库指导原则,并将flexTasks.jar文件放入您的FlexTasks文件夹中,并使用外部库路径将其作为目标文件夹,则flexTasks.jar本身将被排除,从而导致构建失败。要解决此问题,可以将flexTasks.jar放在单独的文件夹中,也可以像上面的示例那样直接将swcs作为目标

票数 6
EN

Stack Overflow用户

发布于 2009-07-17 12:46:58

我认为你不能仅仅要求其他人也有依赖关系。它可以使用第三方库作为运行时共享库,您将需要url上可用的第三方库,并在编译-runtime-shared-libraries=http://www.yourhost.com/my.swf -external-library-path+=my.swc时使用以下内容。请参阅Adobe docs for full details about RSLs

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1143021

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档