`
wsliujian
  • 浏览: 95160 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

使用URI-Style Namespace编译ActionScript/Flex Library

阅读更多
当你开发了一个有着多个Pacakge的类库,并在MXML中使用他们时,有没有发现这样的不便:你需要为隶属于不同Package创建的组件声明各自的pacakge-style namespace,例如下图中ClassA和ClassB:



你可能需要这样引用它们:



当引用的组件类处于很多不同的Package中时,你的代码将会变得复杂和混乱。另外,如果类库的包结构发生变化,你必须要更新所有的Client代码,解决这个问题的最好办法是使用URI-Style的Namespace来编译你的类库。以下是一个Step by Step的教程:

1) 编写类库的源文件,例如上面例子中的ClassA, ClassB,分别隶属于两个不同的Package。

2)在源文件目录下创建清单文件(Manifest),清单文件用于描述Namespace URI与Classes之间的映射关系,例如下面的清单文件使用http://www.swfever.com作为URI,映射了ClassA和ClassB:



3.1) 使用清单文件和命令行参数编译Library (Compc)
在原有的命令行参数基础之上增加两个参数:
-namespace http://www.swfever.com manifest.xml
上面参数的作用是声明一个URI为http://www.swfever.com的namespace,使用manifest.xml作为清单文件
-include-namespaces http://www.swfever.com
上面参数的作用是在Library中包含http://www.swfever.com这个namespace

3.2) 如果你使用Flex Builder进行开发,那么事情就更加简单,在Library工程的Properties中打开Flex Library Complier页面,在Compiler options中填入Namespace URL并选择manifest文件即可:



4) 现在你可以使用URI-style的Namespace来引用Library中的类了:



总结一下使用URI-Style Namespace的优点:

可以使用统一的Namespace引用位于不同package甚至不同swc中的类
当package结构发生变化时,客户代码不受影响
分享到:
评论

相关推荐

    Android代码-kroki

    {uri-kroki}[Kroki] provides a unified API with support for BlockDiag (BlockDiag, SeqDiag, ActDiag, NwDiag), C4 (with PlantUML), Ditaa, Erd, GraphViz, Nomnoml, Mermaid, PlantUML, SvgBob and UMLet......

    uri-path:将相对文件系统路径转换为安全URI路径

    尿路 将相对文件系统路径转换为安全URI路径安装npm install --save uri-path用法var URIpath = require ( 'uri-path' ) ;// Properly encode URI path segmentsURIpath ( '../abc/@#$%¨&()[]{}-_=+ß/môòñ 月 ق...

    XBRL符合性测试用例

    <testcase uri="Common/related-standards/xml-schema/uniqueParticleAttribution/uniqueParticleAttribution-testcase.xml"/> <testcase uri="Common/400-misc/400-nestedElements.xml"/> <testcase uri=...

    jstl el taglib 完整jar包

     如果你不使用JSTL 1.0标签 taglibs-standard-jstlel.JAR可以不使用。如果不使用XML库,Xalan包也可以省略。    如果你使用Maven构建您的应用程序,添加以下依赖关系到pom.xml文件: <groupId>org.apache....

    前端开源库-uri-templates

    **uri-templates** 是一种在前端开发中广泛使用的工具,特别是在构建RESTful API时,它允许开发者通过模板机制来创建和解析URI。这种技术源于**RFC6570**(Uniform Resource Identifier Template),一个互联网标准...

    使用此应用程序部署的jar文件中解析绝对uri:[http://java.sun.com/jsp/jstl/core],

    无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri:[http://java.sun.com/jsp/jstl/core],解决办法:WEB/INF的lib下,除了导入jstl.jar包,还要导入standard.jar包。另外,解压standard.jar包,把.tld文件...

    perl-URI-1.73-3.el8.noarch.rpm

    官方离线安装包,亲测可用。使用rpm -ivh [rpm完整包名] 进行安装

    gst-rtsp-server编译测试20151105 0949

    gst-rtsp-server编译测试 分类: 流媒体 Linux c/c++ 2013-01-24 19:28 2550人阅读 评论(1) 收藏 举报 gst-rtsp gstreamer v4l2 最近在做全志A80平台的4K相机(RK3688的八核处理器只能够支持2K相机),调好之后就...

    获取Android手机中所有短信的实现代码

    在Android平台上,获取手机中所有短信的实现代码涉及到对Android系统的Content Provider的使用。Content Provider是Android系统中数据共享和交换的重要机制,它允许应用程序访问其他应用的数据,比如短信存储在系统...

    mq-carto-style-vector:CartoCSS 中用于矢量切片的 MapQuest 样式。 阿尔法风格; 尚未准备好用于生产!

    带有矢量的 MQ Carto 样式这是一个用 CartoCSS 编写的 MapQuest 样式,利用了矢量图块使用打开源并将源 URI 从tmsource:///home/pnorman/mq-carto-style-vector/mq-carto-style.tm2source更改为本地路径。...

    uri-template-0.9.jar

    uri-template-0.9.jar

    jstl.jar_standard.jar.zip

    **JSTL(JavaServer Pages Standard Tag Library)**是Java Web开发中的一个重要组成部分,它提供了一组预定义的标签库,使得开发者可以更方便地在JSP页面中处理常见的任务,如迭代、条件判断、XML处理等,从而降低...

    Spring MVC 框架应用实例

    <taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri> <taglib-location>/WEB-INF/tld/c.tld</taglib-location> </taglib> <taglib-uri>http://java.sun.com/jsp/jstl/fmt</taglib-uri> ...

    Androidmanifest.xml文件分析

    <grant-uri-permission/> <meta-data/> </provider> <uses-library/> </application> <uses-permission/> <permission/> <permission-tree/> <permission-group/> <instrumentation/> <uses-sdk/> <uses...

    Centos7.9安装zabbix6.0LTS版

    编译和安装 Nginx: ``` ./configure --prefix=/usr/local/nginx \ --conf-path=/usr/local/nginx/etc/nginx/nginx.conf \ --error-log-path=/usr/local/nginx/logs/error.log \ --...

    java程序调试错误收集

    当运行时出现类似 `java.lang.UnsupportedClassVersionError: Bad version number in .class file` 的异常时,这通常意味着当前使用的JDK版本与编译代码时所用的JDK版本不一致。 **解决办法:** - **确认JDK版本...

    Android代码-一种简便、可变Action的实现方案

    Android Dynamic Action(动态Action) Android Dynamic Action,简称DA,是一种简便、可变Action的实现方案。DA框架的初衷是为了取代Context.startActivity的...-----/ ------------------/--/ ------/-------/ scheme h

    JSTL详细配置

    ### JSTL(JavaServer Pages Standard Tag Library)详细配置知识点 #### 一、JSTL简介及作用 JSTL,即JavaServer Pages Standard Tag Library(JavaServer页面标准标签库),是一组用于JavaServer Pages技术的标准...

    js-uri-to-multiaddr:将 URI 转换为 Multiaddr

    npm install uri-to-multiaddr 用法 const toMultiaddr = require ( 'uri-to-multiaddr' ) console . log ( toMultiaddr ( 'https://protocol.ai' ) ) // -> /dns4/protocol.ai/tcp/443/https 域名可以代表以下之...

Global site tag (gtag.js) - Google Analytics