Ця проблема пов'язана з неправильною установкою Java.
Можливість 1
ПРИМІТКА. Цей сценарій стосується лише Java 8 та попереднього. Починаючи з Java 9, JRE структурується по-різному. rt.jar та друзів більше не існує, а Pack200 вже не використовується.
У стандартній бібліотеці Java міститься в різних JAR - файли, такі як rt.jar, deploy.jar, jsse.jarі т.д. Коли JRE упакована, ці критичні JAR - файли стиснуті з Pack200 і зберігаються як rt.pack, deploy.pack, jsse.packі т.д. Java установник повинен розпакувати їх. Якщо у вас виникла ця помилка, мабуть, цього не сталося.
Вам потрібно вручну запустити unpack200всі .packфайли в папках JRE lib/та lib/ext/папках.
Windows
Щоб розпакувати один .packфайл (наприклад rt.pack), запустіть:
"%JAVA_HOME%\bin\unpack200" -r -v rt.pack rt.jar
Для рекурсивного розпакування всіх .packфайлів із кореневого запуску JRE:
for /r %f in (*.pack) do "%JAVA_HOME%\bin\unpack200.exe" -r -q "%f" "%~pf%~nf.jar"
* нікс
Щоб розпакувати один .packфайл (наприклад rt.pack), запустіть:
/usr/bin/unpack200 -r -v rt.pack rt.jar
Для рекурсивного розпакування всіх .packфайлів із кореневого запуску JRE:
find -iname "*.pack" -exec sh -c "/usr/bin/unpack200 -r -q {} \$(echo {} | sed 's/\(.*\.\)pack/\1jar/')" \;
Можливість 2
Ви деінсталювали Java якось іншим способом. Можливо, ви встановили без прав адміністратора або намагалися просто витягнути файли з інсталятора. Повторіть спробу встановлення та / або більше привілеїв. Або якщо ви не хочете використовувати інсталятор, .tar.gzзамість цього використовуйте пакет Java.
rt.jarфайлу, який вимагаєтьсяJVMпід час завантаженняJRE