Как я могу отладить мое приложение 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, установить точки останова, пройти код, проверить значения, перейти к определениям и завершить выпуск. Это очень полезно.

Ответ 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:)