3

我创建了 2 个插件,为 Eclipse 的 BIRT 扩展实现了一个 ODA 驱动程序插件及其 UI 插件。

当 eclipse 启动另一个 eclipse 应用程序时,我的插件都按预期工作,然后我可以在其中测试我正在开发的插件。但是,当我将插件安装到 Eclipse 应用程序中,然后从 Windows 快捷方式启动它时,插件可以工作,但找不到 plugin.xml 文件中指定的语言键。

例如,在我的 ODA 驱动程序插件的 plugin.xml 文件中,我将属性“id”设置为“%oda.data.source.id”,将数据源“defaultDisplayName”设置为“%data.source.name”。然后,我在文件“language.properties”中定义了这两个键的值(其中键没有前面的 % 字符)。

运行已安装到 Eclipse 应用程序的 dropins/plugins 目录中的插件时,创建 ODA 数据源名称的向导为“%data.source.name”,并将数据源保存在 rptdesign (XML) 文件中ID 为“%oda.data.source.id”。

由于“语言”不是属性文件的默认名称,我进入了两个插件的清单并将“捆绑本地化”属性更改为“语言”。语言文件位于我的两个插件的根目录中。

属性文件肯定找到了,因为我使用这两个语言文件来存储插件使用的其他字符串,使用 java ResourceBundle 查找。无论插件是从加载另一个插件的 Eclipse 应用程序运行,还是正确安装在 Eclipse 应用程序的 dropins/plugins 目录中,这些字符串总是能找到。

为什么已安装的插件在 plugin.xml 文件中找不到语言键引用?日志中没有错误,并且可以清楚地访问 language.properties 文件...

提前致谢。

4

2 回答 2

2

它应该工作。插件清单文件应该有一行:

Bundle-Localization:language

并在插件的顶层放置属性文件的不同翻译,例如

language_en_US.properties
language_fr.properties
language_ja_JP.properties

由于文件中的 BOM 前缀,我曾经遇到过属性文件的(静默)错误。从那时起,我总是在第一行(以 # 开头)添加注释,以确保操作系统不会妨碍...还要检查换行符是否正确,之前没有 \,编码是 unicode 等。

祝你好运!

于 2010-05-17T20:27:37.197 回答
1

您确定 plugin.properties 文件包含在您的构建中吗?在清单的构建页面上,确保它被选中,以便将其放入插件 jar 文件中。

于 2011-01-18T20:27:30.953 回答