Каждый раз, когда мы добавляем новый плагин в Intelij IDEA, он требует перезапуска.
Плагины или расширения - это то, что нужно подключать и отключать, не затрагивая основное приложение. Например. Google Chrome не требует перезагрузки после установки расширения.
В Java также есть механизм загрузчика классов, поэтому он может загружать и использовать новые классы после запуска приложения. Так в чем же причина того, что Intelij IDEA все еще требуется перезапуск?
почему тогда переполнение стека имеет тег intellij-idea?
пометить IDE, когда у вас возникла проблема с настройкой, прямо сейчас, прямо из моей головы, но не спрашивать, почему этот инструмент создан таким или другим способом. Для этого я думаю, что лучший вариант - спросить прямо на их форуме / в службе поддержки. (PS: а зачем вообще есть тег Java? Почему не хром)
почему ява? - потому что IDEA написана на java, и эта проблема может быть связана с платформой java.
о, тогда имеет смысл. Спасибо, что прояснили это.
Какая «проблема»? Определенно проще выполнить перезагрузку, чтобы убедиться, что в виртуальной машине нет старой грязи. Может, они решили пойти по легкому пути.
Мое предположение: ему нужен перезапуск, потому что добавленный вами плагин может быть предназначен для того, чтобы повлиять на работу вашей IDE при инициализации. Тогда добавление такого плагина в произвольное время будет означать, что этот плагин не будет работать правильно. У IDE нет возможности узнать об этом, поэтому они выбрали общий подход, который будет работать наверняка, а не подход, который может работать или не работать.




Комментарий @M. Прохоров в принципе прав. Многие плагины выполняют настройки или регистрируют компоненты, которые необходимо выполнить во время запуска IDE. Технически возможно проанализировать определенные плагины и определить, можно ли их установить без перезапуска IDE, но эта работа никогда не была приоритетной.
(JetBrains MPS, который также основан на платформе IntelliJ, поддерживает загрузку и выгрузку плагинов без перезапуска IDE, но для MPS это гораздо более важная часть рабочего процесса, и у них не было никаких ограничений с точки зрения совместимости с существующими Плагины IntelliJ IDEA.)
Привет. Спасибо за ответ. Можете ли вы привести пример функции плагина, которая должна запускаться только при запуске и не может быть подключена к работающей среде IDE? это в основном ограничение платформы, а не ошибка плагина?
Например, если плагин заменяет некоторые внутренние компоненты IDEA, а другие компоненты зависят от заменяемых компонентов, такая замена не будет работать после запуска IDE. Если плагин регистрирует расширения только для четко определенных точек расширения, он почти всегда может быть загружен динамически.
разве вы не должны спросить об этом на форуме Jetbrains? intellij-support.jetbrains.com/hc/en-us/community/topics