node debug app javascript node.js webstorm nodemon

javascript - node debug app js



¿Cómo puedo ejecutar nodemon desde WebStorm? (13)

Me gustaría utilizar nodemon desde WebStorm IDE (versión 7). Nodemon observa uno o más archivos en mi carpeta fuente y reinicia el proceso del nodo (un servidor Express en este caso), cuando uno de los archivos fuente cambia.

¿Cómo configuro WebStorm para utilizar nodemon en una configuración de ejecución , de modo que el proceso del nodo se reinicie automáticamente?

Sin nodemon , utilizo la siguiente configuración en WebStorm, pero tengo que reiniciar el proceso del nodo cada vez que cambio algo en el archivo fuente:

  • Intérprete de nodo: /usr/local/bin/node
  • Directorio de trabajo: /Users/foo/test
  • Archivo de JavaScript: server.js

Esto da como resultado una Configuración de ejecución que ejecuta el node server.js en el directorio especificado.

Desde la línea de comandos, puedo usar el siguiente comando para usar nodemon para ver los cambios de archivos: nodemon server.js en el directorio del proyecto.

¿Cómo debo cambiar la configuración de WebStorm para que también use nodemon ?


  1. Hacer una npm instalar nodmemon -g
  2. Solo cambie la ruta de acceso a nodemon.cmd, en mi caso (C: / Users / Rohit Taneja / AppData / Roaming / npm / nodemon.cmd), también obtendrá esta ruta una vez que termine su instalación de nodemon.

  3. Eres bueno para ir


Aquí está la configuración que funciona para mí en Windows 7 + WebStorm 8.0.4. Si pongo nodemon.cmd como el intérprete de nodos, sigo recibiendo "Terminar trabajo por lotes (S / N)?".


Estoy en Windows y para mí no funcionó con nodemon (no tengo idea), pero alguien de jetbrains sugirió probar con el supervisor:

  1. Instalé el supervisor: npm install supervisor -g

  2. A continuación, encuentre dónde está instalado el supervisor , para mí estaba en: C:/Users/AlinC/AppData/Roaming/npm/node_modules/supervisor/lib/cli-wrapper.js –no-restart-on error

  3. Volví a intellij y a editar configuraciones -> parámetros de nodo -> y agregué: error C: / Users / AlinC / AppData / Roaming / npm / node_modules / supervisor / lib / cli-wrapper.js -no-restart-on


Para aquellos interesados ​​en la solución en Windows 10, aquí está mi configuración. No muestra "Terminate Batch" y funciona perfectamente.

Presiona depurar UNA VEZ y puede guardar los archivos de cambio y el servidor se reiniciará en modo de depuración. Todos los puntos de freno funcionan a la perfección


Para instalar nodemon , use lo siguiente (si es necesario, use sudo para ejecutar la instalación con privilegios de administrador:

npm install -g nodemon

Esto instalará nodemon globalmente en su máquina.

Luego, en su configuración de ejecución de WebStorm, agregue lo siguiente, dejando todo lo demás sin cambios:

  • Parámetros de nodo: /usr/local/bin/nodemon --exec /usr/local/bin/node

Esto le indicará al intérprete del nodo que ejecute el script nodemon utilizando la siguiente línea de comando: node /usr/local/bin/nodemon --exec /usr/local/bin/node server.js .

La parte --exec es importante, ya que la ejecución fallará con el siguiente error:

/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)

El error parece deberse a que WebStorm no ve el node ejecutable en su ruta.

La solución para esto es especificar la ubicación del node ejecutable utilizando el --exec /usr/local/bin/node .

Con esta configuración, nodemon funciona bien cuando se ejecuta desde una configuración de ejecución de WebStorm.

El mismo truco podría tener que usarse con algunas de las herramientas similares a nodemon , por ejemplo, node-supervisor .


Para usuarios de Windows configurado:

Intérprete de nodo: ruta del nodo.exe ie c: / program files / node / node.exe

Parámetro del nodo: C: / Users / YOURUSER / AppData / Roaming / npm / node_modules / nodemon / bin / nodemon.js


Parece que la solución con --exec ya no es necesaria, al menos cuando se utiliza la versión más nueva de nodemon y Webstorm 7 u 8.

Todo lo que tiene que hacer es especificar su ruta a nodemon (por ejemplo, /usr/local/bin/nodemon ) en "Parámetros de nodo":

@Bela Clark, gracias por confirmar.


Per @bernhardw comenta, ya que esta fue la respuesta para mí -

Todo lo que se necesita es /usr/local/bin/nodemon bajo los node parameters Funciona para ejecutar y depurar a medida que se reinicia con los cambios, pero la depuración con el punto de interrupción no funciona.

Bonificación: agregue -e para más extensión eg /usr/local/bin/nodemon -e js,html,jade

(osx 10.10.5, rubymine 7.1.4)

HTH


Script en package.json: "start": "nodemon --inspect -r babel-register src",

Primera foto: ejecutar la depuración y se iniciará

Segunda foto: adjuntar al nodo en ejecución existente


También puede hacer que funcione con nvm y aún funciona la depuración.

Probado con Node.js 8.1.0 y Webstorm 2017.2

Primero asegúrese de que está en la versión correcta (en mi caso v8.1.0) e instale nodemon globalmente -

nvm use v8.1.0 npm install -g nodemon

Luego, abra las configuraciones de Ejecutar / Depurar y cree una nueva con el intérprete de nodos correcto.

Los parámetros del nodo deberían ser:

MAC

/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

Guarde y depure respponsibally :)


algunas de estas respuestas parecen funcionar solo para Mac. Para Windows, esta configuración parece funcionar (mi nombre de usuario en Windows 7 es denman).

main.js es el archivo de punto de partida para mi aplicación Express.


npm install -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


Esta es la solución de Windows

Puede usar nodemon.cmd en lugar de nodo directamente como:

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*/

y entonces :

Espero que te ayude.