В чем разница между IBM JDK и Oracle JDK?

Я пишу код Java, который будет работать на сервере AIX. Я хотел бы знать разницу между IBM JDK и Oracle JDK, и если JDK имеют одинаковые классы. Есть ли в IBM JDK все классы, присутствующие в Oracle JDK?

Существуют ли какие-либо документы IBM, описывающие различия между двумя JDK?

2 ответа

Самое большое различие между Java-средами исполнения Oracle и IBM заключается в том, что они имеют независимые реализации компилятора Java Virtual Machine (JVM) и Just In Time (JIT). IBM нужно было создать свои собственные JVM и JIT, которые могли бы запускать java-программы на таких платформах, как z/OS (мейнфреймы), AIX и Linux на процессорах Power, где другие реализации Java не работали. JVM и JIT являются частью внутренних компонентов Java, и они не должны изменять то, как вы пишете свои Java-программы. Нет никаких документов, перечисляющих большие различия между Oracle JDK и IBM, потому что цель состоит в том, чтобы сделать их совместимыми. Как уже говорили другие, они оба реализуют одну и ту же стандартную спецификацию и API Java. Тем не менее, есть много документации по Java от IBM, доступной по адресу:

http://www.ibm.com/developerworks/java/jdk/docs.html

Одна область, которая может повлиять на вас как на программиста, - это то, что у IBM JRE есть свои собственные реализации провайдеров безопасности, которые, возможно, придется настраивать по-другому. Они описаны в Руководстве по безопасности - версия Java 8 находится здесь:

http://www.ibm.com/support/knowledgecenter/SSYKE2_8.0.0/com.ibm.java.security.component.80.doc/security-component/introduction.html

Я работаю в среде, где мы используем Java 1.6, развертывая в Oracle (JRockit), IBM и Oracle/Sun JDK.

Эти три замечательно совместимы. Помимо случайных различий (например, в поведении при запуске JAXWS), мы сталкиваемся с удивительно небольшими проблемами.

Там нет огромных дыр, где один JDK пропускает то, что есть в других.

Я встречаю большую разницу в кодировке GBK. Ibm jvm GBK - это ibm936, а openjdk или oracle jdk - это CP936. CP936 - это настоящий стандарт GBK, известный как windows-936. Так что если вы встречаете странные проблемы GBK, вы можете увидеть решения IBM

Другие вопросы по тегам