0

mergelocales.pyスクリプトを使用しようとしていますが、動作させることができません。

私のui.xml(テストに使用しているもの)には、次のロケールがあります。

<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
    ui:generateFormat='com.google.gwt.i18n.rebind.format.PropertiesFormat'
    ui:generateKeys="com.google.gwt.i18n.rebind.keygen.MD5KeyGenerator"
    ui:generateLocales="en_US, es_ES"
    ui:defaultLocale="es_ES"
    xmlns:g="urn:import:com.google.gwt.user.client.ui">

次に、「-extraextras」引数を使用してプロジェクトをコンパイルします。これにより、プロジェクトに「extras」ディレクトリが生成されます。このディレクトリには「myModule」というフォルダがあり、このフォルダ内に生成された.propertiesファイルがあります。

/myproject/extras/myModule/com.mycompany.myproject.client.mvp.views.MyViewImplMyViewImplUiBinderImplGenMessages_en_US.properties
/myproject/extras/myModule/com.mycompany.myproject.client.mvp.views.MyViewImplMyViewImplUiBinderImplGenMessages_es_ES.properties

ここで、mergelocales.pyを実行してLocalizableResources * .propertiesファイルを取得しようとしています。実行しようとすると、次のようになります。

python2.5〜/ Downloads / mergelocales.py extras / myModule src / main / java / com / google / gwt / i18n / client /

次のスタックトレースを取得します。

Skipping non-default locale in extra directory: com.mycompany.myproject.client.mvp.views.MyViewImplMyViewImplUiBinderImplGenMessages_en_US.properties
Skipping non-default locale in extra directory: com.mycompany.myproject.client.mvp.views.MyViewImplMyViewImplUiBinderImplGenMessages_es_ES.properties
Traceback (most recent call last):
  File "/Users/admin/Downloads/mergelocales.py", line 497, in <module>
    main()    
  File "/Users/admin/Downloads/mergelocales.py", line 131, in main
    mergeLocales( args[0], args[1] )
  File "/Users/admin/Downloads/mergelocales.py", line 466, in mergeLocales
    pathname = os.path.join( resourcesDir, defaultLocaleFilename )
  File "/System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/posixpath.py", line 60, in join
    if b.startswith('/'):
AttributeError: 'NoneType' object has no attribute 'startswith'

このスクリプトを機能させるために欠けているものはありますか?

4

1 に答える 1

0

現在、mergelocales.py を実行して LocalizableResources*.properties ファイルを取得しようとしていますが、[...] 次のスタック トレースが表示されます...

空の LocalizableResource.properties ファイルを自分で手動で作成する必要があり、mergeLocales スクリプトによって入力されます。ここを参照してください:

アプリケーションをフランス語でも利用できるようにしたいとしましょう。LocalizableResource.properties と LocalizableResource_fr.properties という名前の 2 つの空のファイルを作成する必要があります。LocalizableResource.properties にはデフォルト (英語) のテキストが含まれますが、LocalizableResource_fr.properties にはフランス語のテキストが含まれます。これらのファイルは、src/main/resources/com/google/gwt/i18n/client に配置する必要があります。

http://blog.arcbees.com/2015/09/15/i18n-using-gwts-uibinder/から

于 2016-03-13T18:34:39.973 に答える