在 Flex mxmlc 编译器中使用“include-libraries”时可以使用相对路径吗?
Posted
技术标签:
【中文标题】在 Flex mxmlc 编译器中使用“include-libraries”时可以使用相对路径吗?【英文标题】:Can relative paths be used when using "include-libraries" in the Flex mxmlc compiler? 【发布时间】:2010-10-26 06:30:02 【问题描述】:我试图强制将 .swc 中的所有类链接到我的 Flex 项目生成的 SWF 文件中。来自文档:
http://livedocs.adobe.com/flex/3/html/help.html?content=compilers_03.html
include-libraries 库 [...]
将 SWC 文件中的所有类链接到生成的应用程序 SWF 文件,无论它们是否被使用。将此选项与仅包含那些在编译时引用的类的 library-path 选项进行对比。要链接一个或多个类,无论它们是否被使用,而不是整个 SWC 文件,请使用包含选项。此选项通常用于指定资源包。
不幸的是,当我将 .swc 的绝对路径指定为参数时,这似乎只适用于我的 Flex Builder 项目。我的 .swc 位于“lib”目录中,该目录作为“SWC 文件夹”添加到我的 Flex 项目配置中。有谁知道相对引用它的语法吗?
【问题讨论】:
【参考方案1】:我总是用:
mxmlc [...] -library-path+=lib/whatever/default/ [...]
【讨论】:
【参考方案2】:如果您仅讨论编译时,则该信息位于项目目录中的 .actionScriptProperties 文件中。
条目如下所示:
<libraryPath defaultLinkType="1">
<libraryPathEntry kind="3" linkType="1" path="/OtherProjectInTheSameWorkspace/bin/LibName.swc" useDefaultLinkType="false"/>
<libraryPathEntry kind="1" linkType="1" path="lib"/>
</libraryPath>
注意,第二个 libraryPathEntry 是当前项目中 lib/ 目录的相对路径。
如果 SWC 在其自己的项目中,则路径将相对于工作空间的根目录开始。
干杯
【讨论】:
【参考方案3】:使用 src 目录中的 flex config.xml 文件。
如果您的 mxml 文件名为 project.mxml,则配置文件应为 project-config.xml
这是 FlexBuilder 内置编译器和 mxmlc 命令行编译器都会尝试加载的默认名称。
这是一个示例配置文件,其中仅包含您询问的特定条目。但是,您可以在 config.xml 文件中指定任何可以添加到命令行的内容。
<?xml version="1.0" encoding="UTF-8"?>
<flex-config>
<compiler append="true">
<include-libraries append="true">
<library>libs/myLibrary.swc</library>
</include-libraries>
</compiler>
</flex-config>
【讨论】:
以上是关于在 Flex mxmlc 编译器中使用“include-libraries”时可以使用相对路径吗?的主要内容,如果未能解决你的问题,请参考以下文章