Рефакторинг пакетов в банке - PullRequest
1 голос
/ 14 ноября 2009

У меня есть требование загружать две версии банки одновременно. Чтобы избежать коллизий пути классов, я бы хотел переименовать пакеты одного из jar-файлов. Тогда в источнике вы всегда можете легко определить версию по имени пакета.

Я играл с javap, но не смог найти ассемблер для Java 1.6. Я также пытался декомпилировать код с помощью JD , но он никогда не понимал его правильно и не собирался

Ответы [ 2 ]

1 голос
/ 14 ноября 2009

Вы можете использовать пакет с открытым исходным кодом: JclLoader, который помогает загружать разные версии одного и того же jar-файла. Это также было необходимо для тестирования в одной из наших систем.

Ссылка: http://sourceforge.net/projects/jcloader/

1 голос
/ 14 ноября 2009

Еще одна вещь, которую следует рассмотреть вместо того, чтобы вручную изменять классы, - это использовать магию загрузчика классов. Я никогда не делал этого сам, но немного читал об этом. На devx есть статья, в которой объясняется, как загружать несколько версий классов .

...