2015-09-05 2 views
1

Я пытаюсь динамически применять изменения кода для приложения Java Я отлаживаю использование Eclipse. Все работает как ожидалось для всех классов, кроме одного. После внесения каких-либо незначительных изменений и сохранения я получаю сообщение об ошибке: Hot Code Replace Failed - add method not implemented.Горячий код заменить на классы, содержащие вложенные классы

До сих пор я узнал, что в отличие от других, мой проблемный класс содержит (анонимные и явные) вложенные классы. Как следствие, построение моего приложения приводит к более чем одному файлу .class; один для основного класса и дополнительный для каждого внутреннего класса. Я очень подозреваю, что это причина неудачной попытки заменить код.

TL;Есть ли способ сделать замену горячего кода на классы, содержащие внутренние/вложенные классы?

+0

Горячего код замена не является нормальной функцией. При вложенных классах классы должны быть исправлены в группе. «Еще не реализовано» thingy –

ответ

-1

Вы не можете сделать горячий код замены, если изменить схему класса

см In the Eclipse debugger, what kind of changes can be "hot code replaced" into the running JVM?

+0

Я не перебираю схему классов. Как я уже сказал в своем ответе, он не подходит для каких-либо незначительных изменений, даже добавляя или удаляя некоторые пробелы. –

+0

Поскольку это вложенный класс, он должен регенерировать синтетический метод, поэтому меняя его схему, я думаю – flafoux

1

Взгляните на Hotswap Agent:

  • Framework поддержка - Spring, Hibernate, Logback , Jetty, Tomcat, JSF, ...
  • Документация по настройке DCEVM и предварительно скомпилированных двоичных файлов для Java 1.7, 1.8
  • нагрузка классов/подклассов и ресурсы из различных местоположений (разрешить перезагрузку классов от зависимого проекта]
  • открытых и свободного

 Смежные вопросы

  • Нет связанных вопросов^_^