Помещение файла rt.jar
в ваш файл WAR не заставит его использовать Java.Загрузчик классов веб-контейнера всегда должен пытаться загрузить системный загрузчик классов перед просмотром JAR-файлов в вашем веб-приложении, а системный загрузчик классов будет использовать rt.jar
в загрузочном пути к классам;то есть тот, который находится в каталоге установки JRE.
Это также хорошо.Если среда выполнения Java использовала ваш rt.jar
, это может привести к ужасному беспорядку.Код в rt.jar
может пытаться вызывать собственные методы, которые не реализованы в исполняемом файле Java, или он может выполнять вызовы внутренних методов, поведение и / или сигнатуры которых изменились несовместимым образом.
Если вы планируете сделать это, чтобы «исправить» какое-то поведение в библиотеке классов, мой совет:
- Не делайте этого ... вместо этого попробуйте найти обходной путь.
- Если вам нужно это сделать, сделайте это, проверив исходники OpenJDK, исправив «ошибку», собрав новый JDK / JRE и используя , что в качестве вашей JRE.