Привет, мне интересно, насколько файлы классов Java изменяются в разных компиляторах. Итак, насколько изменяются фактические байты, если файлы .java скомпилированы, скажем, Sun JDK 1.4, 1.5 1.6 или даже IBM JDK. Я знаю, что файлы классов могут различаться в отношении отладочной информации и обфускации, но давайте предположим, что эти параметры одинаковы, поэтому включена отладочная информация, без обфускации. Если бы я запустил MD5 или SHA-1 в файле .class, который был скомпилирован с помощью JDK 1.4, будет ли хэш другим, если бы я скомпилировал его в JDK 1.5, но с таргетингом на 1.4, а что будет с JDK 1.5?
Также в связи с этим меняется ли двоичный файл файла класса при использовании разных зависимостей или, по-другому, может ли двоичный файл файла класса меняться в зависимости от его зависимостей?
И последнее, но не менее важное: существуют ли программные способы анализа метаданных файла .class для определения версии компилятора и/или переключателей, которые использовались при его компиляции?
Подробнее здесь: https://stackoverflow.com/questions/545 ... s-versions
Какова разница в файлах Java .class в разных компиляторах, версиях и зависимостях? ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение