Не совсем решение, но некоторая информация:
Я настроил свою папку следующим образом:
/home/nicolas/Private/???????/
Когда ClassLoader
пытается загрузить классы вашего проектаон создает список путей для поиска классов в виде списка URLClassPath
Теперь, когда код продолжается и пытается проанализировать эти пути, он вызывает sun.net.www.ParseUtil.decode ()
Когда я ставлю здесь точку останова, я вижу, что путь для нашего класса:
/home/nicolas/Private/%ed%a0%b5%ed%b4%98%ed%a0%b5%ed%b4%ab%ed%a0%b5%ed%b4%a6%ed%a0%b5%ed%b4%a0%ed%a0%b5%ed%b4%ac%ed%a0%b5%ed%b4%a1%ed%a0%b5%ed%b4%a2/target/scala-2.12/classes/
, поэтому он каким-то образом переводит ???????
в строку в процентах: %ed%a0%b5%ed%b4%98%ed%a0%b5%ed%b4%ab%ed%a0%b5%ed%b4%a6%ed%a0%b5%ed%b4%a0%ed%a0%b5%ed%b4%ac%ed%a0%b5%ed%b4%a1%ed%a0%b5%ed%b4%a2
Это, в свою очередь, создает кодировку CharsetDecoder для UTF-8:
CharsetDecoder dec = ThreadLocalCoders.decoderFor("UTF-8")
.onMalformedInput(CodingErrorAction.REPORT)
.onUnmappableCharacter(CodingErrorAction.REPORT);
и пытается декодировать вышеуказанный URL-адрес, но это не удается, и поэтому классы не могут быть загружены.
Теперь, еслиЯ иду сюда https://www.branah.com/unicode-converter и пытаюсь преобразовать ???????
в% кодированную строку, это дает мне
%f0%9d%94%98%f0%9d%94%ab%f0%9d%94%a6%f0%9d%94%a0%f0%9d%94%ac%f0%9d%94%a1%f0%9d%94%a2
И если при отладке я изменяю URL, используя это закодированное строковое значение,то есть
/home/nicolas/Private/%f0%9d%94%98%f0%9d%94%ab%f0%9d%94%a6%f0%9d%94%a0%f0%9d%94%ac%f0%9d%94%a1%f0%9d%94%a2/target/scala-2.12/classes/
Затем он анализирует его правильно и продолжает идти.
Так что я не знаю, где это происходитчто %ed%a0%b5%ed%b4%98%ed%a0%b5%ed%b4%ab%ed%a0%b5%ed%b4%a6%ed%a0%b5%ed%b4%a0%ed%a0%b5%ed%b4%ac%ed%a0%b5%ed%b4%a1%ed%a0%b5%ed%b4%a2
Интересно то, что если я использую тот же веб-сайт и пытаюсь конвертировать обратно %ed%a0%b5%ed%b4%98%ed%a0%b5%ed%b4%ab%ed%a0%b5%ed%b4%a6%ed%a0%b5%ed%b4%a0%ed%a0%b5%ed%b4%ac%ed%a0%b5%ed%b4%a1%ed%a0%b5%ed%b4%a2
, то я также получаю ???????
Так что я немного запутался