当使用替换脚本执行语言代码时,不会设置安装程序变量sys.languageId

时间:2018-05-29 13:36:32

标签: install4j

如果安装程序在后台运行,我在install4j中使用替换脚本来自动设置语言。 因此,替换脚本返回默认语言代码(" en"在我的情况下)。 由于某种原因,安装程序变量sys.languageId为空,这会导致NullPointerException。

java.lang.NullPointerException
    at java.util.Hashtable.put(Unknown Source)
    at java.util.Properties.setProperty(Unknown Source)
    at com.install4j.runtime.installer.helper.InstallationProperties.setLanguageId(InstallationProperties.java:105)
    at com.install4j.runtime.installer.InstallerContextImpl.finishInstallationProperties(InstallerContextImpl.java:417)
    at com.install4j.runtime.installer.InstallerContextImpl.finish(InstallerContextImpl.java:339)
    at com.install4j.runtime.installer.controller.Controller.handleCommand(Controller.java:268)
    at com.install4j.runtime.installer.controller.Controller.start(Controller.java:106)
    at com.install4j.runtime.installer.Installer.runInProcess(Installer.java:58)
    at com.install4j.runtime.installer.Installer.main(Installer.java:45)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.exe4j.runtime.LauncherEngine.launch(LauncherEngine.java:85)
    at com.exe4j.runtime.WinLauncher.main(WinLauncher.java:94)
    at com.install4j.runtime.launcher.WinLauncher.main(WinLauncher.java:25)

即使如果我尝试使用context.setVariable("sys.languageId", defaultLanguage);在替换脚本中显式设置变量,该变量仍保持为空。 我怎样才能确定该变量已设置?

0 个答案:

没有答案