
Я уже несколько раз пытался установитьjdk 8на моем компьютере с Windows 7 64 бит, но не удалось.
Я скачал8u111Установочный файл с именем"jdk-8u111-windows-x64.exe"и8u112Установочный файл с именем"jdk-8u112-windows-x64.exe"со страницы загрузок Oracle и попытался установить jdk с обеими версиями.
Я запускаю его как администратор, и я также удалил предыдущие версии Java из своей системы.
Установщик открывается правильно, и после нажатия кнопки «Далее» он плавно переходит к первой части, а полоса прогресса полностью заполняется, но когда он переходит ко второй полосе прогресса, он просто останавливается, и полоса прогресса даже не начинается.
Я пробовал обе версии, но результат одинаковый.
Что мне делать? Пожалуйста, помогите мне!!
Редактировать: Следуя указаниям Ramhound, я проверил файл журнала.юшед(во временной папке) и обнаружил следующие 2 ошибки:
[2017/01/16 00:13:54.880, jre.exe (PID: 10076, TID: 11984), BrowserControl.cpp:351 (ui::BrowserControl::execJScriptUnsafe)]
ERROR: script->getIDsOfNames failed with COM error 0x80020006 (Unknown name)
[2017/01/16 00:13:54.910, jre.exe (PID: 10076, TID: 11984), BrowserControl.cpp:817 (ui::BrowserControl::Invoke)]
ERROR: Exception with message 'JScript execution error' caught
Я не понимаю, что это значит. Пожалуйста, помогите!!
решение1
У меня такая же проблема на компьютере с Windows 7, причем уже долгое время.
Проблема, как я понимаю, заключается в том, что когда установщик JRE (установка JRE является частью установки JDK, если вы не отмените ее выбор) пытается представить некий HTML, по-видимому, содержащий некоторый JavaScript (например, баннер "3 миллиарда устройств используют java"), используя некоторую библиотеку "BrowserControl", которая, как я предполагаю, будет использовать некоторые компоненты Internet Explorer, через MVC от Microsoft, некоторые распространяемые VC C++ или классы фреймворка .NET. Здесь это не удается. Вероятно, что на новой установке этого не произойдет, поскольку в ней задействованы некоторые глючные/несовместимые компоненты. Похоже, что установщик java пытается выполнить JScript на BrowserControl, что вызывает необработанное исключение.
В любом случае, проблему можно обойти, запустив установщик Java из командной строки и указав /s в качестве аргумента для тихой (т. е. неинтерактивной) установки. Пользовательский интерфейс, вызывающий ошибку, не будет представлен, и вы получите установку JRE по умолчанию.
Кстати, JDK 9 на моей машине имеет сломанный пользовательский интерфейс, с ожидаемыми флажками и кнопками, но без надписей и некликабельными. Таким образом, диалоговое окно можно закрыть только кнопкой "X" в правом верхнем углу, что заставит установку JDK продолжиться и в конечном итоге успешно завершиться.
Итак, я предлагаю вам
- загрузить автономный установщик JRE отдельно
- установить JDK обычным образом, но с отключенной опцией JRE
- установите JRE в командной строке с помощью
<path-to-the-jre-installer-exe> /s
Или, на самом деле, я думаю, что установщик JDK /s
тоже принимает опцию. Так что, если вам не нужно менять опции, это сработает.
Если выделатьнеобходимо задать некоторые параметры, это можно сделать с помощью дополнительных параметров в командной строке, см.этот вопрос StackOverflow, илиэтот документ описывает установщик JRE 6.Насколько мне известно, эти параметры не изменились.
Надеюсь это поможет!
PS: Проблема известна, но, по-видимому, Oracle ее в значительной степени игнорирует:
- https://community.oracle.com/thread/3912749
- Отчет об ошибке OpenJDK.Они думают, что это решено, но это не так. У меня была та же проблема при установке JDK и/или JRE 9.0.1 на моей машине сегодня, и я могу воспроизвести проблему каждый раз.