25 мая 2016 г.

[MSError] Java - Could not load file/URL specified


Истек срок действия сертификата банк-клиента. Бухгалтер звонит в ТП, спрашивает что да как. Они бла-бла-бла нажмите туда, нажмите сюда, скачается файл OperatePSBCertificate.jnlp, запустите его и тут оп:
Unable to launch the application
Если нажать Details, то там:
 Could not load file/URL specified [здесь путь]
Техподдержка говорит, пересоздайте учетную запись пользователя Windows, а бухгалтер О_О и звонит мне.

Посмотрел и увидел примерно такую ситуацию:
На дворе XXI век, а разработчики не могут научить свои приложения читать по-русски. У бухгалтера имя пользователя было написано кириллицей, а java-апплет сначала распаковывается во временную папку, а потом запускает распакованный файл.
Временная папка по-умолчанию имеет путь:
%USERPROFILE%\AppData\Local\Temp
То есть
C:\Users\ИмяПользователя\AppData\Local\Temp
Собственно методов несколько, но все они  делают одно и тоже, изменяют временную папку.


  1. МенюПуск - правой клавишей мыши (ПКМ) на Компьютер - свойства - слева "Дополнительные параметры системы" - "переменные среды"

    Здесь выделяем переменную TEMP - Изменить - в значение ставим другой путь, например C:\Temp (папка должна существовать). Тоже самое и для переменной TMP


    Не рекомендуется использовать этот вариант для решения проблемы.
  2. Попробовать изменить папку временных файлов в самом Java
    Для этого: МенюПуск - Панель Управления - Java XXXX - Settings - Кнопка Change

    Но, как видите, кнопка не всегда активна
  3. Последний вариант, как по мне, так самый подходящий.
    Меню пуск - командная строка - ПКМ - Запуск от имени администратора
    Пишем:
       set tmp = нашПуть
       set temp = нашПуть
    далее нужно перейти в директорию со скачанным файлом
       cd ПутьДоДиректории
    По-умолчанию %USERPROFILE%\Downloads
    И набираем имя нашего файла:
       OperatePSBCertificate.jnlp
    Нажимаем Enter
    Командная строка может завершить имя файла, т.е. набираем "Opera" и клавишу Tab, если файл с именем начинающемся на "Opera" есть, то автоматически подставится полное имя, если их несколько, то подставится имя первого (дальнейшее нажатие Tab будет менять файлы по алфавитному порядку).
Последний вариант хорош тем, что при закрытии окна командной строки переменная не сохранится.
Все.

Комментариев нет:

Отправить комментарий