删除java首选项存储中包含句号的节点



我试图在卸载时清除我的java应用程序的用户java.util.prefs. preferences节点。为此,我在卸载步骤中使用"删除Java首选项存储中的节点或键"操作来删除保存首选项的包。

对于不包含句号("test")的包名(在windows上)有效。该包在注册表中被删除。

但是,如果包包含一个句号("test.test"),我就不能让它工作。

我在install .log中得到的错误信息:

[INFO] com.install4j.runtime.beans.actions.registry.DeletePreferenceItemAction [ID 1006]: Execute action
       Property key: 
       Property onlyIfEmpty: false
       Property preferenceDeleteType: User specific
       Property packageName: test.test
       Property rollbackSupported: true
[ERROR] com.install4j.runtime.beans.actions.registry.DeletePreferenceItemAction [ID 1006]: Package test.test does not exist
        Execute action not successful after 2 ms

这是"删除Java首选项存储中的节点或键"操作的配置:

Package name: test.test
Key: i left this empty (i want to delete the entire package)
Preference root: User specific

其他值为默认值。

我还尝试了以下包名值:

test.test
"test.test"

但无济于事。我们已经有很多用户使用注册表项,所以最好不要重命名包名。有办法做到这一点吗?

谢谢!

install4j将输入的包名转换为路径名,因此"."被替换为"/"。我在6.0.5中添加了转义,因此输入"test。"Test"将从该版本开始工作。要获取预发布版本,请联系support@ej-technologies.com.

最新更新