Мы повышен до последней JRE/install4j для нашего незначительного инсталлятор обновления, и мы начали получать следующее сообщение об ошибке при попытке использовать install4j API:Получение java.lang.UnsatisfiedLinkError с install4j 6.1.4 и JRE 1.8.0_121
2017-02-17 19:29:42 SEVERE: #{14} [StandardContext.loadOnStartup] Servlet [ConfigServlet] in web application [] threw load() exception
java.lang.UnsatisfiedLinkError: com.install4j.runtime.installer.platform.win32.Common.setWindows95(Z)V
at com.install4j.runtime.installer.platform.win32.Common.setWindows95(Native Method)
at com.install4j.runtime.installer.platform.win32.Common.init(Unknown Source)
at com.install4j.runtime.installer.platform.win32.Misc.<clinit>(Unknown Source)
at com.install4j.api.windows.WinEnvVars.getenv(Unknown Source)
at com.install4j.runtime.installer.helper.InstallerUtil.is64BitWindows(Unknown Source)
at com.install4j.api.Util.is64BitWindows(Unknown Source)
...
мы получаем ту же ошибку, когда мы пытаемся запустить деинсталлятор:
Exception:
java.lang.UnsatisfiedLinkError: com.install4j.runtime.installer.platform.win32.Common.setWindows95(Z)V
at com.install4j.runtime.installer.platform.win32.Common.setWindows95(Native Method)
at com.install4j.runtime.installer.platform.win32.Common.init(Unknown Source)
at com.install4j.runtime.installer.platform.win32.Win32UserInfo.<clinit>(Unknown Source)
at com.install4j.runtime.installer.platform.UserInfo.isAdminGroup(Unknown Source)
at com.install4j.api.Util.isAdminGroup(Unknown Source)
at com.install4j.runtime.installer.InstallerVariables.initAdminRights(Unknown Source)
at com.install4j.runtime.installer.InstallerVariables.initCommandLine(Unknown Source)
at com.install4j.runtime.installer.Uninstaller.getScreenExecutor(Unknown Source)
at com.install4j.runtime.installer.Uninstaller.runInProcess(Unknown Source)
at com.install4j.runtime.installer.Uninstaller.main(Unknown Source)
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(Unknown Source)
at com.exe4j.runtime.WinLauncher.main(Unknown Source)
at com.install4j.runtime.launcher.WinLauncher.main(Unknown Source)
Что является причиной этого?
Интересно, что i4jinst.dll в папке .install4j, кажется, из более ранней версии, где i4jruntime.jar, по-видимому, является последней версией. Должна ли эта DLL также быть заменена во время обновления? –
в котором .install4j папка? При запуске установщика обновлений эти файлы будут заменены. Стек-стек содержит методы, которые больше не находятся в текущей версии. –
База установщика создана при i4j V6.0.1 SHA1 хэш файла i4jinst.dll: 03 E9 b2 04 а4 75 6b 21 0a b8 15 4a 42 72 24 16 2c 5d 5e 7e SHA1 хэш файла i4jruntime.jar: 70 d5 bb 97 29 38 12 be 53 09 66 da f0 20 46 ca 15 2d 34 4d - Незначительное обновление, созданное с использованием i4j v6.1.4 SHA1 хэш файла i4jinst.dll: 62 cd d7 fc 7d ff 20 4f 24 02 е3 5b а6 DF 47 аб f2 D9 7а 7c SHA1 хэш файла i4jruntime.jar: 70 d5 бб 97 29 38 12 53 09 будет 66 да f0 20 46 15 ча 2d 34 4d - Примечание: InstallDir/.install4j /i4jruntime.jar -> Без изменений InstallDir/.insta ll4j/i4jinst.dll -> Изменения в версии от 11/29/2016 –