2014-11-06 2 views
0

인터넷에서 발견 한 모든 솔루션을 시도했습니다.Flex 로컬 리 제이션 : 컴파일 된 리소스 번들을 찾을 수 없습니다.

임 플렉스 4.5을 사용하여,이 메신저 무엇을 :

  1. 생성 된 디렉토리 로케일/ko 페이지 내 src 디렉토리에
  2. 는 일부 매핑으로 그 디렉토리에 resources.properties 파일을 추가합니다.
  3. add -locale en_US -source-path =./locale/{locale} -allow-source-path-overlap = 컴파일 args에 true입니다.
  4. en_US 로케일 디렉터리가 나타나는 프레임 워크에서 확인되었습니다.
  5. 추가 메타 데이터 :

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

    이 내가 시도의 주요 솔루션의 일부입니다 :

    1. 의 선택을 취소은 "

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

    응용 프로그램을 시작하는 나에게 예외를 제공합니다 빌드 경로에서 "사용되지 않는 RSL 제거"를 선택하십시오.

  6. 소스 경로로 디렉토리를 추가하십시오.
  7. -include-resource-bundles 인수를 사용하고 여기에 내 디렉토리를 지정합니다 (모든 번들을 가져 오기 위해 -resource-bundle-list 인수 사용).

내가 할 수있는 다른 아이디어는 무엇입니까?

답변

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"); 

나를 위해 잘 작동, 필요 아무것도 추가 없습니다 해당 솔루션에 대한 컴파일러 args.

+0

Ahh 나는 당신이 리소스 번들을 swf로 컴파일하려고했다는 것을 간과했다. 다행 당신은 그것을 가지고있어 :) – Clintm

+0

고마워, 나는 actully 자신을 자원을 컴파일하려고하지 않았지만, 이것이 주위에있어 유일한 방법, 그래서 잘 메신저 행복하게 작동합니다. –

0

정규화 된 디렉토리 경로 이름을 사용해보십시오. de_DE, en_US,

ru_RU과의 컴파일러 옵션 : 나는 3 개 하위 디렉토리를 src/locale에서

: 당신이 개미를 사용하는 경우 당신은 여기

+0

제안을 주셔서 감사합니다. 나는 행운이 있기를 시도했습니다. im이 잘못된 경로를 제공하면 오류가 발생합니다. 따라서이 부분이 다루어졌습니다. –

0

${basedir}/src/locale/{locale}a mobile app (Android 및 iOS)에 대한 내 구조 사용할 수 있습니다 : 다른 모바일 앱에 대한 -locale=ru_RU,en_US,de_DE -source-path=locale/{locale}

내가 가진 :

src/locale 4 년 하위 디렉토리 : en_US, hr_HR, sr_RS, sl_SI

나는 copylocale 명령으로 후자의 3 개의 dir을 추가해야했습니다.

그리고 컴파일러 옵션에

는 : -locale hr_HR sr_RS sl_SI en_US -allow-source-path-overlap=true

두 애플리케이션은 최신 Apache Flex SDK와 나를 위해 잘 작동합니다.

다음은 src/locale/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

나는 그것을 정확하게했다. 그러나 나는 아파치 flex sdk를 사용하지 않았지만 flex 4.5 sdk를 사용했다. 여기에 문제가있을 것이라고 생각 하는가? –

+1

[installer] (http://flex.apache.org/installer.html)를 사용하여 새로운 Apache Flex SDK를 설치하는 것은 매우 쉽습니다. 시도해 보셔야합니다 :-) –

+0

감사합니다! :) –