Я установил Java 8 на Windows 7 с помощью переключателя STATIC = 1, ожидая, что при установке не будет указано значение пути, чтобы сохранить установку Java 7 по умолчанию. Это не сработало, и значение пути было изменено путем добавления C:\ProgramData\Oracle\Java\javapath в начале пути. Я удалил это из пути, но приложения по-прежнему открываются с использованием Java8 по умолчанию. Я даже заменил ярлыки в вышеуказанных каталогах ярлыками, которые идут на Java7, но это не сработало. Я также поместил путь к Java7 в начале своей переменной среды Path.

Что я делаю неправильно? Почему мои приложения все еще используют Java8, а не Java7?

Заранее спасибо.

Редактировать: я обнаружил, что он будет запускаться из java7 через командную строку и через 8 при переходе по URL для jnlp через IE. Не уверен почему.

2 ответа2

0

Знаете ли вы, что Java также помещает java.exe/javaw.exe в каталог system32
(который также находится в Path-Variable), при установке Java?
Это может быть проблемой.
Попробуйте удалить его из system32 или заменить его (java.exe/javaw.exe) на нужную версию.

Далее 1: Вы можете деактивировать / активировать Java-версии в панели управления Java.
Далее 2: JNLP может указать, что необходима Java-версия, необходимая для запуска приложения (проверьте JNLP на наличие <j2se version = "1.8+">).

PS: (причина некоторых комментариев)
Java не более небезопасна, чем все другие приложения, созданные с помощью C/C++/Delphi/VB! Когда дело доходит до безопасности, почти во всех случаях подразумевается java-песочница .

Ура!

0

Причиной проблемы стало неожиданное поведение при запуске jnlp через URL. Если я пытаюсь запустить javaws "<Place JNLP URL here>" он будет работать в Java 7, как и ожидалось. Переход к нему через IE запускает его в Java 8. Это очень странно, но я думаю, что это настройка сервера.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .