Проблемы с Java 7u65
Прошлой ночью было выпущено новое обновление Java 7: 7u65. У меня есть веб-приложение, в которое загружается служебный апплет, и после обновления мои тесты на разных компьютерах не выявили ни проблем, ни неправильного поведения.
Позже я начал получать сообщения о проблемах, связанных с апплетом Java-службы моего продукта. Все отчеты пришли от пользователей, которые обновили Java JRE до 7u65 (с 7u60):
- Апплет не загружался вообще. Я показываю экран "Загрузка" при запуске приложения, и это не отображается. Кроме того, все службы, предоставляемые моим Java-апплетом, были недоступны.
- Изменив расширенную конфигурацию панели управления Java, чтобы всегда показывать консоль (на одном из компьютеров, на которых возникла эта проблема), я обнаружил, что апплет даже не запускает консоль Java.
- Используя ту же станцию, где произошла ошибка, пытаясь получить доступ к java.com для проверки текущей версии java, загружается апплет Java и консоль отображается без ошибок.
Все тесты были выполнены после очистки Browser и Java Cache, и даже после удаления установленных сертификатов (у меня есть действующий подписанный апплет).
Я проверил примечания к выпуску Java 7u65, и ни одно из упомянутых изменений не повлияло на мой апплет. Также не было проблем при использовании Java 7u60.
У меня нет никаких подсказок о том, что происходит, возможно, потому что обновление Java было выпущено несколько часов назад. Поскольку консоль Java не может отображаться, даже если я настраиваю панель управления Java для этого, я не могу сказать, есть ли какое-либо исключение. Я не могу воспроизвести проблему на моих компьютерах (Windows 8 или Windows 7, оба на 64-битной), но проблема была зарегистрирована на ПК с Windows 7.
Один из моих друзей сказал мне, что это происходит на машинах, где использовалась Java 7u60, а затем она была обновлена до Java 7u65 без деинсталляций. Кроме того, это происходит в более старых ОС (например, WinXP), что более естественно.
Я пишу этот вопрос, потому что кажется очень странным, что некоторые компьютеры имеют эту проблему, а другие нет. Я хотел бы знать, если кто-то еще имеет эту проблему, знает, что может быть причиной, или обнаружил / применил какое-либо решение для нее. Кроме того, я хотел бы поделиться решением, если мне когда-нибудь удастся его найти.
Благодарю.
Редактировать:
Внешние ссылки, связанные с той же версией Java (JRE).
- Сбой Internet Explorer после обновления Java до 7u65: проблема с той же версией JRE, на этот раз с Internet Explorer и Firefox.
- Проблема загрузки RS (Java) ~ READ: проблема, связанная с тем же обновлением версии JRE, на этот раз в Java-игре.
- Будущее Java на Windows XP:
Это объявление об окончании поддержки было неверно истолковано как "Java больше не работает в Windows XP" или "Oracle остановит применение обновлений Java в Windows XP". Эти утверждения не верны.
7 ответов
Я только что столкнулся с этой проблемой с одним из моих апплетов.
Похоже, что некоторые изменения были внесены в обработку параметров java-vm-args и java_arguments в 7u65.
"java_arguments", кажется, больше не работает, когда он указан, мой апплет молча завершится ошибкой, даже не запустив JVM.
Похоже, что oracle изменил что-то с обработкой java-аргументов плагина по умолчанию, что вызвало проблему в новой java.
При обновлении со старой версии Java возможно, что значение для deploy.javaws.jre.0.args (или deploy.javaws.jre.1.args) не определено в C:\Users\${USER}\AppData\LocalLow\Sun\Java\Deployment\deployment.properties
Если вы добавите
deployment.javaws.jre.0.args=
в deploy.properties, апплет будет работать.
Это может быть сделано через панель управления Java также:
Java -> Вид -> двойной щелчок по ячейке Runtime Parameters для Java 7u65, чтобы войти в режим редактирования -> OK -> Применить
Решение java-jvm-args у меня не сработало, апплет был запущен, но аргументы были проигнорированы.
У меня была такая же проблема.
Я удаляю C:\Users\${USER}\AppData\LocalLow\Sun
Когда я перезагрузил веб-страницу с апплетами. JRE заново создал эту папку.
И все было в порядке.
Между содержимым папок нет большой разницы... но это сработало.
Кажется, это ошибка в JRE
Oracle выпустила обновление, которое решает эту конкретную проблему в версии 7u67
http://www.oracle.com/technetwork/java/javase/7u67-relnotes-2251330.html
Как писал Милош Раткович, если у клиента нет строк в развертывании. Свойства
deployment.javaws.jre.X.args=
где x - номер установки Java для версии 7_65 (номер установки Java для конкретной версии - X в строке deployment.javaws.jre.X.product=1.7.0_65
), Java-апплет не удалось запустить.
В моем случае у меня есть решение - не передавайте аргументы для моего апплета. В моем коде JavaScript для запуска апплета я просто комментирую
<param name="java_arguments" value="some arguments">
строка
Кроме того, если вы удалите каталог C:\Users\${USER}\AppData\LocalLow\Sun, при следующем запуске Java-апплета Java напишите новый файл deploy.properties с правильной строкой аргументов java
- Удалите обновление Java 7 65 и переустановите обновление Java 7 55 Загрузите автономную версию Windows x86
- Зайдите в панель управления Java и снимите флажок: автоматическое обновление
- Когда появится следующее окно, нажмите "не проверять"
- затем нажмите "применить" и "ок"
- закройте все браузеры и снова откройте их, чтобы продолжить работу
До сих пор это работало для меня каждый раз, и я делал это в течение последних двух недель с проблемами "0".
Извините, это не ответ. Я пытался проверить обратную связь о том, что JRE 7u65 не может принять "java_arguments"; Тем не менее, я установил Windows x32 и установил (новый) 7u65 без обновления с любой более старой версии. С помощью "java_arguments" машина может загружать апплет в IE8 и FF30, когда несколько конкретных ПК не могут выйти из одного и того же апплета с обновленным u65.