Как я могу отладить мое приложение Meteor с помощью WebStorm IDE?
Может ли кто-нибудь предоставить короткий список шагов по подключению приложения Meteor к отладчику WebStorm, пожалуйста?
Ответы
Ответ 1
WebStorm - единственная среда IDE с встроенной поддержкой отладки кода сервера Meteor - проверьте это видео. Даже в Windows отладка очень проста:
WebStorm 9 +
Перейдите в Run → Debug → Edit configuration..., щелкните знак плюса, нажмите "Meteor". Вы можете добавить переменную окружения, такую как ROOT_URL, если вам нужно.
WebStorm старше 9
Этот ответ сохраняется только в исторических целях. Вам следует обновить WebStorm.
В старых WebStorms вам приходилось создавать конфигурацию отладки Node.js.
-
на сервере, экспортируйте переменную среды NODE_OPTIONS=--debug=47977
. Например,
NODE_OPTIONS=--debug=47977 meteor # Linux/Mac
set NODE_OPTIONS=--debug=47977 & meteor` # Windows
-
создать конфигурацию запуска/отладки WebStorm/PhpStorm с помощью порта выше (47977) и хоста сервера. Оставьте 127.0.0.1, если вы отлаживаете локально.
![Run -> Run/Debug confioguration]()
- в WebStorm, Run → Debug <myapp> , или нажмите Shift + F9. Убедитесь, что вы видите "Подключено к < ваш хост > " на панели "Отладка"
Теперь вы можете установить точки останова, получить доступ к локальным переменным и т.д.
Для отладки клиента просто используйте отладчик Chrome или Firebug.
Устранение неполадок
-
Process disconnected unexpectedly
- это происходит, когда метеорит автоматически запускается из-за отсутствия конкретной поддержки для Метеор. Просто запустите → Debug <myapp> , или снова нажмите Shift + F9.
-
вы не можете подключиться к серверу - убедитесь, что правила брандмауэра разрешают входящие подключения к любому порту, который вы выбрали для отладчика Node.js(47977 здесь).
Ответ 2
Другие ответы теперь устарели. Не добавляйте конфигурацию отладки Node.js, как описано выше, или беспокоитесь о spyjs.
Если вы используете Webstorm 9.0, это так же просто, как в Run → Debug → Edit configurations..., щелкните по плюсу, нажмите "Метеор".
WebStorm также может попросить вас установить надстройку браузера, но только для клиентской части отладки; просто добавьте точку останова в код на стороне сервера, и вы увидите, что она работает из коробки.
JetBrains обновили видео, которое было связано с в Dan Dascalescu выше, и он показывает вам процесс, который я только что описал.
Ответ 3
Для приложений, использующих webpack:webpack
, использование профиля отладки WebStorm Meteor
, похоже, не работает.
Моя настройка использует webpack:webpack
v1.0.12, Meteor v1.3.0 и WebStorm 2016.1, но, вероятно, будет работать с более поздними версиями (обратите внимание, что исправление только для этой проблемы было выпущено в версии 1.0.12, поэтому более ранние версии, вероятно, не работать с этой процедурой).
Вот что я сделал, чтобы заставить его работать:
-
Создайте файл webpack.json
в корне проекта.
Он должен включать конфигурацию devtool
, которая генерирует исходные карты, которые помогают отлаживать. Остальные могут быть изменены в соответствии с вашей конкретной настройкой.
{
"root": "src",
"devServer": {
"host": "localhost"
},
"devtool": "source-map"
}
-
Создайте настройку отладки:
Node.js Удаленная отладка, порт 5858
(порт настраивается).
![удаленная node конфигурация отладки]()
-
Запустите meteor debug
Вы можете указать порт с помощью --debug-port <port number>
.
Подробнее см. meteor help debug
.
![meteor debug first run]()
-
Подключите WebStorm к отладчику
- запустите отладчик
![click]()
- сообщение о состоянии должно указывать, что оно подключено. Скрипты должны быть доступны на вкладке
Scripts
.
![панель отладки должна указать, что она подключена]()
- сервер должен работать в консоли
![сервер должен возобновить выполнение]()
-
Поразите свои точки останова и радуйтесь.
Ответ 4
WebStorm 9 будет поддерживать Meteor. Пока WS 9 еще не выпущен (по состоянию на 7 октября 2014 года), существует программа раннего доступа для WS 9.
Прочтите блог JetBrains WebStorm, в котором описывает некоторые функции поддержки Meteor и включает краткое видео.
Я новичок в Meteor, WebStorm (и JavaScript, если на то пошло), и использовал сборку WS 9 EAP 138.2406 в течение нескольких недель. Я могу запустить свой проект из среды IDE, установить точки останова, пройти код, проверить значения, перейти к определениям и завершить выпуск. Это очень полезно.
Ответ 5
Вы можете попробовать плагин spyjs для Webstorm: http://blog.jetbrains.com/webstorm/2014/04/spy-js-webstorm-secret-service/
Ответ 6
Существует ошибка со старыми версиями Webstorm для отладки серверной части Meteor 1.2.x. Последняя версия Webstorm (11.0.3), выпущенная 24 декабря 2015 года, исправила ее. Заметки о выпуске можно найти здесь: https://confluence.jetbrains.com/display/WI/WebStorm+143.1559.5+Release+Notes
Теперь я могу отлаживать без проблем из Webstorm:)