intellij Hybris класс перекомпилировать не работает - PullRequest
0 голосов
/ 16 мая 2018

Я установил плагин hybris.
Импортированный проект с ним.
Сделали ant clean all.
Тогда, если я попытаюсь build->recompile class, это не работает. Похоже, идея не видит классы, сгенерированные ant.
Если я делаю build->rebuild project, а затем build->recompile класс, он работает нормально, но это совсем не удобно. Я верю, что это можно исправить, но я не смог его найти.
Это обычная ошибка (пакеты разные для разных случаев): enter image description here

Ответы [ 3 ]

0 голосов
/ 25 июля 2018

Я не знаю, поможет ли это,
, вы можете запустить другую cmd консоль и запустить setantenv и ant build для класса hotswap во время выполнения.

0 голосов
/ 25 ноября 2018

это, по сути, ожидаемое поведение.Вы не можете смешивать "муравьиную" сборку и "нативную" ИДЕЮ.Это две отдельные системы сборки.

Это объяснение разработчика подключаемого модуля hybris ( hybris-integration.atlassian.net / browse / IIPS-120 )

И он предлагает решение для этого:

  • , прежде чем пытаться импортировать проект, вам нужно выполнить ant clean all (впоследствии вам не нужно использовать ant) ​​
  • import theпроект с использованием плагина hybris.
  • Нажмите Build-> Recompile project

Затем вы можете создать или изменить конфигурацию тестового запуска, если это необходимо.Перекомпилируйте ваши классы и т. Д. Непосредственно в Idea.

Также он упомянул дело о JRebel здесь ( hybris-integration.atlassian.net / browse / IIPS-47 )

мы поддерживаем оба режима компиляции.Муравьиные цели и идея внутренняя.Они не должны смешиваться, поскольку у идеи есть своя собственная модель компиляции / кеш.Если вы используете компиляцию идей, вы можете использовать JRebel или hotswap.

0 голосов
/ 18 мая 2018

Вы не можете использовать классы горячей замены в hybris без помощи агента горячей замены. На рынке доступен инструмент под названием JRebel . Это хороший коммерческий инструмент, если можно себе позволить. Тем не менее, если вы работаете с открытым исходным кодом, существует многообещающая альтернатива JRebel, которая представляет собой DCEVM (виртуальная машина динамического изменения кода) вместе с HotswapAgent.

...