Обновление библиотеки gzip в jre - PullRequest
2 голосов
/ 09 апреля 2010

Есть ли способ обновить библиотеку gzip, которую использует JRE?

В библиотеке gzip есть ошибка, которая используется в последней версии JRE, и она была исправлена ​​в более поздней версии библиотеки gzip, поэтому я хотел бы заставить работать последнюю версию JRE, обновив только gzip.

Ошибка в нативном коде из библиотеки gzip, который использует JRE.

Ответы [ 3 ]

0 голосов
/ 09 апреля 2010

Я думаю, что это возможно, установив bootclasspath: http://java.sun.com/javase/6/docs/technotes/tools/solaris/java.html, чтобы переопределить класс более новой версией.

Прочтите предупреждение: «Приложения, использующие этот параметр для переопределения класса в rt.jar, не должны развертываться, поскольку это противоречит лицензии двоичного кода Java 2 Runtime Environment».

(или если ошибка находится в нативной библиотеке, вы можете использовать java.library.path)

0 голосов
/ 13 апреля 2010

Короткий и простой ответ - «нет». По крайней мере, вы не хотели бы идти туда по разным причинам.

К сожалению Commons Compress также использует только собственный компрессор из java.util.zip, но в вашем случае я бы по-прежнему использовал Commons Compress, так что компрессор легко заменить с точки зрения API. Затем напишите свой собственный компрессор. В Java, если вам не нужна скорость или использование JNI, если вы действительно хотите пойти на это. Как только ошибка исправлена ​​в JRE, вы можете просто переключить реализацию обратно на JRE.

0 голосов
/ 09 апреля 2010

В основном нет (но вы, вероятно, можете использовать магию операционной системы, чтобы переопределить загрузчик встроенной библиотеки, чтобы включить новый).

Вы нашли эту проблему в базе данных ошибок Java? http://bugs.sun.com/

...