|
|
|
Сравнение Class-файлов
|
|||
|---|---|---|---|
|
#18+
Допустим, написал Java-программу и отдал её в использование. С течением времени, сделал некоторые изменения, исправил всплывшие ошибки. И возникает вопрос: какие class-файлы были изменены по сравнению с предыдущей версией программы. Чтобы только их отдать клиенту, клиент заменит class-файлы(пусть внутри jar) и он получит рабочую версию программы. :) По каким характеристикам можно сравнить два Class-файла, чтобы убедиться в их различии или "одинаковости" ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2015, 00:31 |
|
||
|
Сравнение Class-файлов
|
|||
|---|---|---|---|
|
#18+
Вопрос странный. Наверное автор не знает как сравнивать двоичные файлы. Вообще отдавать клиенту какие-то "class-файлы" - это неверная организация процесса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2015, 01:46 |
|
||
|
Сравнение Class-файлов
|
|||
|---|---|---|---|
|
#18+
feomatrИ возникает вопрос: какие class-файлы были изменены по сравнению с предыдущей версией программы. Чтобы только их отдать клиенту, клиент заменит class-файлы(пусть внутри jar) и он получит рабочую версию программы. :) По каким характеристикам можно сравнить два Class-файла, чтобы убедиться в их различии или "одинаковости" ? Подобные процессы это хорошая возможность разложить себе грабли. Клиенту отдавать нужно систему целиком и монолитно в том виде в котором она была протестирована. Протестировать систему и отдать только часть её файлов это и есть грабли. Не весь проект состоит из Class-файлов. С другой стороны в Java Web Start есть возможность клиенту скачивать разницу между локальным jar и апдейтом. Только нужен специальные сервлет, который поддерживает все элементы протокола. Но главный вопрос это "зачем"? Сколько у вас там гигабайт кода, что загрузка вдруг занимает продолжительное время в современных сетях. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2015, 09:20 |
|
||
|
Сравнение Class-файлов
|
|||
|---|---|---|---|
|
#18+
Вопрос странный. Наверное автор не знает как сравнивать двоичные файлы. не могут ли в этом случае, попадать элементы, которые не изменились? например, если сборка производилась под другой ОС или версией JDK? Вообще отдавать клиенту какие-то "class-файлы" - это неверная организация процесса. Если мы не понимаем, какая часть из скомпилированных файлов изменилась, а какая - нет, тогда это опасно. Потому и спрашиваю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2015, 09:48 |
|
||
|
Сравнение Class-файлов
|
|||
|---|---|---|---|
|
#18+
BlazkowiczПодобные процессы это хорошая возможность разложить себе грабли. Клиенту отдавать нужно систему целиком и монолитно в том виде в котором она была протестирована. Протестировать систему и отдать только часть её файлов это и есть грабли. Не весь проект состоит из Class-файлов. Не спорю, что ступаю на скользкую дорожку и задача не очень тривиальная. С другой стороны в Java Web Start есть возможность клиенту скачивать разницу между локальным jar и апдейтом. Только нужен специальные сервлет, который поддерживает все элементы протокола. по описанию, то что интересует. Но главный вопрос это "зачем"? Сколько у вас там гигабайт кода, что загрузка вдруг занимает продолжительное время в современных сетях. У клиента не современный канал и потому возникает такого рода потребность. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2015, 10:06 |
|
||
|
Сравнение Class-файлов
|
|||
|---|---|---|---|
|
#18+
feomatrПо каким характеристикам можно сравнить два Class-файла Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2015, 16:11 |
|
||
|
Сравнение Class-файлов
|
|||
|---|---|---|---|
|
#18+
feomatrУ клиента не современный канал и потому возникает такого рода потребность.-g:none при компиляции и pack200/unpack200 при подготовке/развёртывании. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2015, 16:13 |
|
||
|
Сравнение Class-файлов
|
|||
|---|---|---|---|
|
#18+
feomatrВопрос странный. Наверное автор не знает как сравнивать двоичные файлы. не могут ли в этом случае, попадать элементы, которые не изменились? например, если сборка производилась под другой ОС или версией JDK? Тем более. Если сборка проводилась под более новой версией JDK - то она уже несовместима с целевой JVM. Она по факту изменилась. И нечего здесь высасывать грязь из пальца. Изменилась - и точка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2015, 16:23 |
|
||
|
Сравнение Class-файлов
|
|||
|---|---|---|---|
|
#18+
feomatrЕсли мы не понимаем, какая часть из скомпилированных файлов изменилась, а какая - нет, тогда это опасно. Потому и спрашиваю. Сильно удивишся но разраб который это кодил скорее всего не ведёт никаких реестров изменённых class-файлов. Вкупе с кодо-генерацией wsdl, antls e.t.c. Вообщем бери war/jar/ear и ставь всё пакетом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2015, 17:05 |
|
||
|
Сравнение Class-файлов
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovfeomatrУ клиента не современный канал и потому возникает такого рода потребность.-g:none при компиляции и pack200/unpack200 при подготовке/развёртывании. Кстати, да. Совсем забыл про pack200. Хороший вариант. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2015, 09:02 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39111579&tid=2124634]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
171ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 241ms |
| total: | 493ms |

| 0 / 0 |
