Как работает интеграция JetBrains Upsource и IDE под капотом?
У Upsource есть свой плагин к PhpStorm, который интегрируется с браузером.
Интересует как он это делает. И что нужно, чтобы допустим написать свой плагин, который позволит перенаправлять пользователя из браузера в IDE?
P.S. Я PHP разработчик и с миром Java пока еще не знаком.
4 коментарі
Додати коментар Підписатись на коментаріВідписатись від коментарівСкорее всего используется свой протокол для ссылок, например, phpstorm://openFile=path-to-file.
Чтобы это все открывалось в IDE она должна при установке зарегистрировать себя как handler для этого протокола. После всего этого операционная система будет знать, кто может обработать этот протокол.
Для написания своих плагинов существует отдельная приблуда для jetbrains ide, там вроде бы, даже свой язык программирования имеется. К сожалению, названий не помню, но все гуглится. Кстати, можно ещё в репозитории плагинов посмотреть, там вроде было что-то для создания плагинов.
Это уже детали реализации. Чтобы ответить на этот вопрос нужно быть знакомым с API для плагинов. Плюс, взаимодействие между продуктами jetbrains всегда будет лучше, скорее всего у них даже есть больше возможностей для интеграции по сравнению с самописными плагинами
Кстати нашел еще один интерестный способ перенаправить пользователя из браузера в ide.
Отправить пользователя на http://localhost:63342/api/file/?file=relative/path/to/file&line=22
Когда стартуют idia ide они запускают локальный сервер, api которого мы можем использовать.
Плюс такого подхода в том что нужно знать только относительный путь к файлу в проекте.
А минус в том что если в ide не открыт нужный проект, файл не откроется.