Как удалить поврежденную копию вспомогательной технологии Java - AccessBridge с ПК с Windows 10 - PullRequest
0 голосов
/ 19 декабря 2018

Моя компания продает Java-приложение, которое таинственным образом перестало работать для одного из наших клиентов.Это работало, но теперь не начнется.Ошибка при попытке запуска приложения: «java.awt.AWTError: Вспомогательная технология не найдена ...».Я исследовал проблему и думаю, что она вызвана каким-то другим java-приложением, которое неправильно установило «java se accessbridge» и в результате повредило все java-приложения на своем ПК.См .:

https://www.avnirvana.com/threads/java-install-error-any-ideas-on-the-fix.2178/

Исключение в потоке "main" java.awt.AWTError: Вспомогательная технология не найдена: com.sun.java.accessibility.AccessBridge error

https://docs.oracle.com/javase/accessbridge/2.0.2/setup.htm#uninstalling-jab

У меня был заказчик, который удалил наше приложение, удалил все копии Java на своем ПК и удалил все копии WindowsAccessBridge.dll, найденные в '% WINDOWSHOME% \ SYSWOW64'и'% WINDOWSHOME% \ SYSTEM32 '.Теперь он получает ту же ошибку от Install4j при попытке переустановить наше приложение.Я не просил его попытаться переустановить Assistive Technology-AccessBridge, поскольку нашему приложению это не требуется, а установка выглядит запутанной и требует нескольких ручных шагов.

Кажется, есть обходной путь.Согласно этой статье: https://deciphertools.com/blog/2016-05-09-assistive-technology-not-found/

вы можете помешать jre загружать AccessBridge, добавив:

-Djavax.accessibility.assistive_technologies 
-Djavax.accessibility.screen_magnifier_present=false

в файл vmoptions приложения.Я бы попросил его добавить это в наш файл vmoptions, но он не может запустить установщик, так как он получает ту же ошибку.

У меня вопрос двоякий: Что еще я могу попросить у клиентасделать, чтобы удалить Assistive Technology-AccessBridge?

Если это не так, как я могу изменить файл vmoptions install4j , чтобы он мог установить наше приложение и изменить его файл vmoptions?

1 Ответ

0 голосов
/ 19 декабря 2018

Программа установки не читает файл .vmoptions по соображениям безопасности.Вы можете передать параметры виртуальной машины в командной строке следующим образом:

installer.exe -J-Djavax.accessibility.assistive_technologies -J-Djavax.accessibility.screen_magnifier_present=false
...