JRebel
Лекция- Computer Science
Существует и множество способов облегчить процесс разработки: можно подобрать соотвествующие инструменты и технические решения, которые позволят минимизировать время на повторное развёртывание приложений. Одним из таких инструментов является JRebel, разрабатываемый компанией ZeroTurnaround. В данном докладе мы рассмотрим, какие проблемы JRebel решает, и как эти решения достигнуты.
Рассказ Антона будет состоять из двух частей:
- Часть 1. Обзор проблем и альтернативных решений связаных с развёртыванием Java EE приложений. Введение в JRebel: обзор возможностей, демострация.
- Часть 2. JRebel SDK. Расширенные возможности при интеграции с JRebel. Использование библиотеки Javassist для внедрения интеграций.
Другие лекции конференции
Комментарии
Поскольку Java создаёт искусственные переменные и методы для таких объектов, как литералы классов, внутренние классы и т. д., то вышеупомянутое свойство было не настолько удобным в обращении, чем предполагалось.
В свою очередь, Java Rebel является альтернативным решением этой проблемы. Использование этого плагина позволяет делать горячую замену без таких сильных ограничений.
Java Rebel постоянно отслеживает изменения в файловой системе, и, если таковые находятся, то этот плагин обновляет изменённые классы и ресурсы в памяти.
Конечно, этот плагин намного более функциональней, чем простое использования свойства горячей замены в виртуальной машине Java, но у него есть и свои недостатки.
Первое, это то, что всё же существуют ограничения на те объекты, которые этот плагин может обновлять в памяти.
Не поддерживается следующее:
- изменение существующих конструкторов классов;
- статических переменных, методов, классов;
- реализация классами нового(ых) интерфейса(ов).
- меня очень огорчило что он н еподдерживает изменение существующих конструкторов классов