Як я можу запустити nodemon з WebStorm?


84

Я хотів би використовувати nodemon із середовища WebStorm IDE (версія 7). Nodemon переглядає один або кілька файлів у моїй вихідній папці та перезапускає процес вузла (у цьому випадку Express-сервер), коли один із вихідних файлів змінюється.

Як налаштувати WebStorm на використання nodemon у конфігурації запуску , щоб процес вузла автоматично перезапустився?

Без nodemon я використовую таку конфігурацію в WebStorm, але маю перезапускати процес вузла, коли я щось змінюю у вихідному файлі:

  • Інтерпретатор вузлів: /usr/local/bin/node
  • Робочий каталог: /Users/foo/test
  • Файл JavaScript: server.js

Це призводить до конфігурації запуску, яка працює node server.jsу вказаному каталозі.

З командного рядка я можу використовувати таку команду, щоб використовувати nodemon для спостереження за змінами файлів: nodemon server.jsу каталозі проекту.

Як мені потрібно змінити конфігурацію WebStorm, щоб вона також використовувала nodemon ?


Це питання , як представляється, по тій же схемі: stackoverflow.com/questions/11175041 / ...
nwinkler

Дивіться мою відповідь stackoverflow.com/a/52463378/7350853 використовує найновішу версію Webstorm на сьогодні.
iwaduarte

Відповіді:


143

Схоже, обхідний шлях із цим --execбільше не потрібен, принаймні при використанні найновішої версії nodemon та Webstorm 7 або 8.

Все, що вам потрібно зробити, це вказати шлях до nodemon , отримавши його шлях із запуском which nodemonу вашій консолі (наприклад /usr/local/bin/nodemon) у розділі "Параметри вузла":

Веб-шторм з нодемоном

@Bela Clark, дякую за підтвердження.


Просто спробував - зараз це працює чудово. Дякуємо за надану оновлену відповідь!
nwinkler

8
@bernhardw, webstorm не зупиняється на точках зупинку під час запуску налагоджувача з цими конфігураціями. Будь-яка ідея чому?
Нік Сумейко

4
Вдалося отримати nodemon та точки зупинку, працюючи, дотримуючись цих інструкцій: vcfvct.wordpress.com/2015/02/13/… Зверніть увагу, що я використовував --debug-brk замість --debug
n00b

1
Щоб налагодження працювало, мені довелося використовувати Live Edit pluging для IntelliJ замість nodemon.
engin

1
Гарна відповідь ! Дякую
Жюльєн

33

Це рішення для Windows

Ви можете просто використовувати nodemon.cmd замість node безпосередньо як:

Node interpreter : C:\MyPath\To\nodemon.cmd
Node parameters : /*Empty for me*/
Node WorkingDirectoy : C:\Users\MyUserName\Desktop\DirectoryContainingMyIndex.js
JavaScriptFile : app\index.js /*or just index.js depending on your config*/

і потім :

введіть тут опис зображення

Сподіваюся, це допоможе вам.


Я думав, що це найпростіша відповідь.
Пол Уейд,

6
Привіт, спробував це, і коли я змінюю файл, він запитує мене (на консолі Web Storm) "Припинити пакетне завдання (Т / Н)?". Я також бачу, що виконувана команда: "C: \ Program Files (x86) \ JetBrains \ WebStorm 8.0.4 \ bin \ runnerw.exe" C: \ Users \ xyz \ AppData \ Roaming \ npm \ nodemon.cmd - -debug-brk = 27344 --nolazy -q app.js. Мені чогось не вистачає?
Томер Каган

1
для проблеми "припинити пакетне завдання" просто додайте "<nul" (не вказуючи лапки) до входу "Параметри програми". (відповідь знайдено тут: superuser.com/a/498798 )
Тобіас Вайхарт

Чому це проголосувало? Це не буде працювати, коли nodemon перезапуститься, він не додасть "<nul" з початкового запуску, тому ви все одно отримаєте "Припинити пакетне завдання (Т / Н)?"
KVM

18

Щоб встановити nodemon , використовуйте наступне (якщо потрібно, використовуйте sudo для запуску інсталяції з правами root:

npm install -g nodemon

Це встановить nodemon глобально на вашу машину.

Потім у конфігурації запуску WebStorm додайте наступне, залишивши все інше без змін:

  • Параметри вузла: /usr/local/bin/nodemon --exec /usr/local/bin/node

Це вказівка інтерпретатора вузол для виконання nodemonсценарію , використовуючи наступну командний рядок: node /usr/local/bin/nodemon --exec /usr/local/bin/node server.js.

--execЧастина важлива, так як виконання зазнає невдачі з наступною помилкою:

/usr/local/bin/node /usr/local/bin/nodemon server.js
4 Oct 13:56:50 - [nodemon] v0.7.10
4 Oct 13:56:50 - [nodemon] to restart at any time, enter `rs`
4 Oct 13:56:50 - [nodemon] watching: /Users/foo/test
execvp(): No such file or directory
4 Oct 13:56:50 - [nodemon] starting `node server.js`
4 Oct 13:56:50 - [nodemon] exception in nodemon killing node
Error: spawn ENOENT
    at errnoException (child_process.js:980:11)
    at Process.ChildProcess._handle.onexit (child_process.js:771:34)

Здається, помилку спричинено тим, що WebStorm не бачить nodeвиконуваний файл на своєму шляху.

Виправлення для цього полягає у визначенні розташування nodeвиконуваного файлу за допомогою --exec /usr/local/bin/nodeпараметра.

Використовуючи ці налаштування, nodemon чудово працює під час запуску з конфігурації запуску WebStorm .

Той самий фокус, можливо, доведеться використовувати з деякими інструментами, подібними до nodemon , наприклад, node-supervisor .


1
Це працює для конфігурації запуску, але не для налагодження. Будь-яка ідея щодо налагодження, а також з nodemon у webstorm?
yves amsellem

3
Принаймні з Webstorm 8 EAP та nodemon 1.0.15 вам більше не потрібно вказувати --exec. Все, що мені потрібно було використати /usr/local/bin/nodemonв "Параметри вузла".
bernhardw

@bernhardw: Я можу підтвердити те саме
Бала Кларк

18

Я працюю в Windows, і я не працював з nodemon (не знаю, чому), але хтось із Jetbrains запропонував спробувати з супервізором:

  1. Я встановив супервізор: npm install supervisor -g

  2. Тоді знайдіть, де supervisorвстановлено, для мене було в: C:\Users\AlinC\AppData\Roaming\npm\node_modules\supervisor\lib\cli-wrapper.js –no-restart-on error

  3. Я повернувся до Intellij: редагування конфігурацій -> параметри вузла -> і додав: C: \ Users \ AlinC \ AppData \ Roaming \ npm \ node_modules \ supervisor \ lib \ cli-wrapper.js – помилка перезапуску

редагувати конфігурації

параметри вузла


1
Щоб зупинитися на точці зупинки, слід додати наступне : --debug-brkі повний рядок - C:\Users\<username>\AppData\Roaming\npm\node_modules\supervisor\lib\cli-wrapper.js no-restart-on error --debug-brkПеревірка з jetbrains jetbrains.com/phpstorm/webhelp/… адреса
uzay95

1
Не вдалося змусити nodemon працювати в Windows 8 з Webstorm 9, це спрацювало як чарівність
Саймон Треуелла

1
Мені підходить (Webstorm 11 у Windows), але точки зупинки не працюють. Я спробував додати, --debug-brkале не пощастило.
електротип


14

Для тих, хто цікавиться рішенням у Windows 10, ось моя конфігурація. Це не відображає "Припинити пакет" і працює ідеально.

введіть тут опис зображення

Ви натискаєте налагодження ОДИН раз, і тоді ви можете зберегти файли змін, що завгодно, і сервер перезапуститься в режимі налагодження. Всі гальмівні точки працюють бездоганно


це робоча відповідь для налагодження. Я встановлюю лише параметри вузла. параметри вузла як текст (змінити ім'я користувача): c: \ users \ username \ AppData \ Roaming \ npm \ node_modules \ nodemon \ bin \ nodemon.js --debug = 3001
Олексій Обухов

Це не спрацювало для мене. Додавання --debug = 3001 параметр впав nodemon
JCF

Спасибі. Основний запуск працює, а також налагодження без проблем! Це має бути ТОП-відповідь!
Георгій Пеєв

8

Для користувачів Windows встановлено:

Інтерпретатор вузлів: Шлях до node.exe, тобто c: \ program files \ node \ node.exe

Параметр вузла: C: \ Users \ YOURUSER \ AppData \ Roaming \ npm \ node_modules \ nodemon \ bin \ nodemon.js


Це спрацювало для мене! Налагодження та точки зупинки працюють ідеально. Вузол версія 10.15.1 nodemon версія 1.18.10 WebStorm 2018.3.5
ГФД

5

Ви також можете змусити його працювати з nvm, і налагодження все ще працює.

Перевірено за допомогою Node.js 8.1.0 та Webstorm 2017.2

Спочатку переконайтеся, що ви використовуєте правильну версію (у моєму випадку v8.1.0) і встановіть nodemon глобально -

nvm use v8.1.0
npm install -g nodemon

Потім відкрийте конфігурації запуску / налагодження та створіть нову з правильним інтерпретатором вузлів.

Параметри вузла повинні бути:

МАК

/Users/[YOUR_USER]/.nvm/versions/node/v8.1.0/bin/nodemon --inspect=3001

LINUX

/usr/local/nvm/versions/node/v8.1.0/bin/nodemon --inspect=3001

Збережіть та налагодьте відповідально :)

Налагодження Node.js nodemon webstorm


4

Ось конфігурація, яка працює для мене в Windows 7 + WebStorm 8.0.4. Якщо я ставлю nodemon.cmd як інтерпретатор вузлів, я постійно отримував "Припинити пакетне завдання (Т / Н)?".

Nodemon + Webstorm у Windows


див. мою відповідь щодо цього питання в Windows, я думаю, ви вказали на неправильний файл nodemon.cmd
Alexander Mills

3

Якщо ви встановили nodemon як глобальну бібліотеку, просто встановіть параметри вузла:

C: \ Users \ $ {yourUser} \ AppData \ Roaming \ npm \ node_modules \ nodemon \ bin \ nodemon.js

nodemon у веб-шторм


Працює як шарм через nvm та npm 14.7.0
Євген Залівадний

2

Це єдине, що мені вдалося:

  1. Додайте нову команду сценарію запуску вузла package.json:

введіть тут опис зображення

  1. Створіть NPM CONFIG (не конфігурацію вузла)
  2. Виберіть "start-watch" як команду

введіть тут опис зображення

Для мене це працювало для налагодження / зупинки без проблем та додаткового головного болю.


1

деякі з цих відповідей працюють лише для Mac. Для Windows ця конфігурація, здається, працює (моє ім’я користувача в Windows 7 - це денман).

введіть тут опис зображення

main.js - це файл відправної точки для моєї програми Express.


0
  1. Виконайте npm встановлення nodmemon -g
  2. Змініть Шлях на Вузол лише на nodemon.cmd, у моєму випадку (C: \ Users \ Rohit Taneja \ AppData \ Roaming \ npm \ nodemon.cmd), ви також отримаєте цей шлях після завершення встановлення nodemon.

  3. Вам добре їхати


0

За коментарем @bernhardw, оскільки це було для мене відповіддю -

Все це необхідно в /usr/local/bin/nodemonрамках node parameters робіт для запуску та налагодження , як він перезавантажується при зміні, але налагодження з точки зупину не працює.

Бонус: додайте -e для додаткового розширення, наприклад /usr/local/bin/nodemon -e js,html,jade

(osx 10.10.5, рубімін 7.1.4)

HTH


0

npm встановити -g nodemon

1* goto run->Edit Configurations->Press'+' at left corner and choose Node.js

2* Select Node.js and Press '+' 

3* Name as Nodemon, add path in javaScript file: C:\Users\Your_User_Name\AppData\Roaming\npm\node_modules\nodemon\bin\nodemon.js

4* Click Apply and Ok

5* Run the Nodemon

введіть тут опис зображеннявведіть тут опис зображення


0

Сценарій у package.json: "start": "nodemon --inspect -r babel-register src",

Перше зображення: Запустіть налагодження, і воно почнеться

Друге зображення: приєднання до існуючого запущеного вузла Налаштування введіть тут опис зображення


0

Ось виправлення помилки, яку я отримував ...

Якщо ви використовуєте Windows + NodeJS + nodemon. За допомогою IntelliJ - Запустити конфігурацію.

ERROR: starting inspector on failed: address already in use

Коли я використовую nodemon версії 1.19.1, я отримую помилку. Коли я використовую nodemon версії 1.18.11, це працює!

Удачі...


0

Просто додайте новий скрипт до package.jsonпід назвою nodemon (або виберіть власне ім'я)

"scripts": {
  ...
  "nodemon": "nodemon ./bin/www"
}

Потім перейдіть до Run / Debug Configuration та додайте npm- конфігурацію. Встановити

  • Команда " запустити "
  • Скрипт для " nodemon " (ім'я, яке ви вибрали в package.json)

приклад


0

У мене є розробка в mac, і, як вказує OdkoPP, я змусив це працювати

"scripts": {
"build": "tsc",
"dev": "nodemon src/index.ts --exec ts-node"
},

Конфігурації запуску / налагодження npm: Конфігурації запуску / налагодження npm

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.