2014-11-06 58 views
0

我尝试了我在互联网上找到的每个解决方案。Flex本地化:找不到编译的资源包

进出口使用Flex 4.5中,这是即时通讯做什么:

  1. 创建目录的语言环境/ EN_US在我的src目录
  2. 添加resources.properties文件到该目录中的一些映射。
  3. 添加-locale EN_US -source路径= /区域/ {区域设置} -ALLOW - 源路径重叠= true来编译ARGS。
  4. 在en_US区域设置目录出现的框架中检查。
  5. 添加元数据:

    <fx:Metadata> 
        [ResourceBundle("resources")] 
    </fx:Metadata> 
    

启动应用程序,让我异常:

Error: Could not find compiled resource bundle 'resources' for locale 'en_US'. 

这是一些主要的解决方案,我想的:

  1. 取消“从构建路径中删除未使用的RSL“。
  2. 将该目录添加为源路径。
  3. 使用参数-include-资源包,并在这里给我的目录(使用参数-resource束列表来获取所有包)。

任何想法,我能做些什么呢?

回答

0

OK我找到了解决办法在这里:

http://www.nbilyk.com/flex-localization-example

我真的不知道为什么它应该是困难的。无论如何,如果有人需要帮助,那么可以使用

。您使用的蚂蚁(如在链接描述),如果你想dynamcally加载成功编译后的文件就像我需要的使用(例如):

resourceManager.localeChain = ["en_US", "es_ES"]; 
resourceManager.loadResourceModule("Resources_en_US.swf"); 
resourceManager.loadResourceModule("Resources_es_ES.swf"); 

工作很适合我,不需要添加任何东西到该解决方案的编译器参数。

+0

啊,我明白了......你忽略了提及你试图将资源包自己编译成swf。很高兴你的工作:) – Clintm 2014-11-07 15:19:08

+0

谢谢,我actully没有尝试编译资源本身,但这是我得到它的唯一方式,所以只要它运行得很好,我很高兴。 – 2014-11-07 22:03:17

0

尝试使用完全合格的目录路径名。如果您使用的蚂蚁,你可以使用${basedir}/src/locale/{locale}

+0

感谢您的建议,我试图做到这一点,没有运气。如果即时通讯给出了一个错误的路径即时通讯错误,所以这部分被覆盖。 – 2014-11-06 23:41:48

0

这里是我的a mobile app(Android和iOS)结构:

src/locale我有3个子目录:de_DEen_USru_RU

而且在编译器选项:-locale=ru_RU,en_US,de_DE -source-path=locale/{locale}

对于另一个移动应用我有:

src/locale 4 subdirs:en_UShr_HRsr_RSsl_SI

我不得不与copylocale命令添加后3个迪尔斯。

而且在编译器选项:-locale hr_HR sr_RS sl_SI en_US -allow-source-path-overlap=true

这两个应用程序的工作很适合我用最新Apache Flex SDK

这里是一个SRC /区域/ hr_HR /的recources的内容。性能文件:

# resources.properties file for locale hr_HR 

navbar.tables=Stolovi za igranje: 
navbar.all=Svi 
navbar.vacant_long=Slobodni 
navbar.vacant_short=Slb. 
navbar.full_long=Su puni 
navbar.full_short=Su puni 

comments.good_long=dobri 
comments.good_short=Dbr. 
comments.bad_long=loši 
comments.bad_short=loši 
comments.without_long=neutralni 
comments.without_short=ntr. 

help.title=Pomoć 
+0

我做的确如此,但我没有使用apache flex sdk但是adove flex 4.5 sdk,你认为这里可能有问题吗? – 2014-11-07 11:16:57

+1

使用他们的[installer](http://flex.apache.org/installer.html)安装新的Apache Flex SDK非常简单,您应该尝试一下:-) – 2014-11-07 12:13:22

+0

谢谢! :) – 2014-11-07 14:43:55