我使用的是Flash Builder 4,需要一个可与Cue Points配合使用的VideoDisplay组件。 Flex的VideoDisplay所基于的OSMF类的较新版本已经处理了这个问题。我的想法是滚动我自己的VideoDisplay组件,而不是修补现有的组件。为此,我创建了一个项目,其中包含较新版本的OSMF类,以及另一个项目,我将使用该项目以单独的包名称构建新的VideoDisplay。
问题在于,由于Flex 4.1 SDK包含大多数具有原始包名称的OSMF类,因此import org.osmf.media.MediaPlayer;
等语句引用位于
C:\ Program Files \ Adobe \ Adobe Flash 生成器 4 \的SDK \ 4.1.0 \框架\项目
而不是较新版OSMF中的MediaPlayer类。
我尝试重命名OSMF项目中的软件包,以便明确命名,但我从IDE中获得异常(在前置条件检查期间发生了意外异常。有关详细信息,请参阅错误日志)。
SDK总是(正确地?)在战斗中获胜?是否有一些(脏?)方法强制项目更喜欢对同名SDK类的swc /项目的引用?
欢迎任何建议。
编辑:鉴于这些评论,我显然在解释我的问题方面表现不佳。所以又来了。
Flex为其VideoPlayer使用较旧的,功能较弱的OSMF平台版本。我需要使用包含对提示点的支持的新版本。我已经下载了较新的OSMF源代码,它在自己的项目中。为了将来的可维护性,我宁愿不必重命名这个项目中的包。
我将实现的VideoPlayer是第二个项目,不会重复Flex SDK或OSMF的软件包名称。 Flex SDK和OSMF之间存在冲突,而不是我要构建的类与OSFM或SDK之间的冲突。我的项目需要访问OSMF项目中的类,而不是Flex SDK中具有名称包/类名称的类。由于Flex SDK基于OSMF,因此Flex已将包和命名空间标识保持不变,因此命名模糊。
答案 0 :(得分:2)
为什么不将自己的视频组件放在自己独特的包(反向域名)下。在许多方面会更好。它将区分您作为该包的作者以及减少冲突。
答案 1 :(得分:1)
在“Flex Build Path”中从Flex 4.1 SDK中删除OSMF。