Me gustaría usar nodemon desde el WebStorm IDE (versión 7). Nodemon observa uno o más archivos en mi carpeta de origen y reinicia el proceso de nodo (un servidor Express en este caso), cuando uno de los archivos de origen cambia.
¿Cómo configuro WebStorm para usar nodemon en una configuración de ejecución , de modo que el proceso del nodo se reinicie automáticamente?
Sin nodemon , uso 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 JavaScript:
server.js
Esto da como resultado una configuración de ejecución que se ejecuta node server.js
en el directorio especificado.
Desde la línea de comando, puedo usar el siguiente comando para usar nodemon para observar los cambios de archivo: nodemon server.js
en el directorio del proyecto.
¿Cómo necesito cambiar la configuración de WebStorm para que también use nodemon ?
fuente
Respuestas:
Parece que la solución alternativa con
--exec
ya no es necesaria, al menos cuando se usa la versión más reciente de nodemon y Webstorm 7 u 8.Todo lo que tiene que hacer es especificar su ruta a nodemon obteniendo su ruta con la ejecución
which nodemon
en su consola (por ejemplo/usr/local/bin/nodemon
) en "Parámetros de nodo":@Bela Clark, gracias por confirmar.
fuente
Esta es la solución de Windows
Puede usar nodemon.cmd en lugar del 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.
fuente
Para instalar nodemon , use lo siguiente (si es necesario, use sudo para ejecutar la instalación con privilegios de root:
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:
/usr/local/bin/nodemon --exec /usr/local/bin/node
Esto le indica al intérprete de nodo para ejecutar la
nodemon
secuencia de comandos mediante la línea de comandos siguiente:node /usr/local/bin/nodemon --exec /usr/local/bin/node server.js
.La
--exec
pieza 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 usando el--exec /usr/local/bin/node
parámetro.Con esta configuración, nodemon funciona bien cuando se ejecuta desde una configuración de ejecución de WebStorm .
Es posible que tenga que utilizar el mismo truco con algunas de las herramientas similares a nodemon , por ejemplo, node-supervisor .
fuente
--exec
más. Todo lo que tenía que hacer era usarlo/usr/local/bin/nodemon
en "Parámetros de nodo".Estoy en Windows y para mí no funcionó con nodemon (no tengo idea de por qué), pero alguien de Jetbrains sugirió probar con el supervisor:
Instalé supervisor:
npm install supervisor -g
Luego encuentre dónde está
supervisor
instalado, para mí estaba en:C:\Users\AlinC\AppData\Roaming\npm\node_modules\supervisor\lib\cli-wrapper.js –no-restart-on error
Volví a Intellij: editar configuraciones -> parámetros de nodo -> y agregué: C: \ Users \ AlinC \ AppData \ Roaming \ npm \ node_modules \ supervisor \ lib \ cli-wrapper.js –no-restart-on error
fuente
--debug-brk
y la cadena completa esC:\Users\<username>\AppData\Roaming\npm\node_modules\supervisor\lib\cli-wrapper.js no-restart-on error --debug-brk
Check from jetbrains jetbrains.com/phpstorm/webhelp/… address--debug-brk
pero no tuve suerte.--inspect
bandera y luego adjunte un depurador .Para aquellos interesados en la solución en Windows 10, aquí está mi configuración. No muestra el mensaje "Terminar Batch" y funciona perfectamente.
Presiona depurar UNA VEZ y luego puede guardar los archivos de cambio y el servidor se reiniciará en modo de depuración. Todos los puntos de freno funcionan perfectamente
fuente
Para usuarios de Windows configurados:
Intérprete de nodo: ruta de node.exe, es decir, c: \ archivos de programa \ node \ node.exe
Parámetro de nodo: C: \ Users \ YOURUSER \ AppData \ Roaming \ npm \ node_modules \ nodemon \ bin \ nodemon.js
fuente
También puede hacer que funcione con nvm y la depuración aún funciona.
Probado con Node.js 8.1.0 y Webstorm 2017.2
Primero asegúrese de estar 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 Ejecutar / Depurar y cree una nueva con el intérprete de nodo correcto.
Los parámetros de nodo deben 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
Guardar y depurar respponsibally :)
fuente
Aquí está la configuración que me funciona en Windows 7 + WebStorm 8.0.4. Si pongo nodemon.cmd como intérprete de nodo, seguía recibiendo "¿Terminar trabajo por lotes (S / N)?".
fuente
En caso de que haya instalado nodemon como una biblioteca global, simplemente establezca los parámetros de nodo:
C: \ Users \ $ {yourUser} \ AppData \ Roaming \ npm \ node_modules \ nodemon \ bin \ nodemon.js
fuente
Esto es lo único que funcionó para mí:
Para mí, esto funcionó para la depuración / puntos de interrupción sin problemas ni dolores de cabeza adicionales.
fuente
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.
fuente
Solo cambie la ruta al nodo a nodemon.cmd, en mi caso (C: \ Users \ Rohit Taneja \ AppData \ Roaming \ npm \ nodemon.cmd), también obtendrá esta ruta después de que finalice la instalación de nodemon.
Eres bueno para ir
fuente
Según el comentario de @bernhardw, ya que esta fue la respuesta para mí:
Todo lo que se necesita está
/usr/local/bin/nodemon
ennode parameters
Works para ejecutar y depurar, ya que se reinicia con los cambios, pero la depuración con punto de interrupción no funciona.Bono: agregue -e para más extensión, por ejemplo
/usr/local/bin/nodemon -e js,html,jade
(osx 10.10.5, rubymine 7.1.4)
HTH
fuente
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
fuente
Script en package.json: "start": "nodemon --inspect -r babel-register src",
Primera imagen: Ejecute la depuración y comenzará
Segunda imagen: adjuntar al nodo en ejecución existente
fuente
Aquí hay una solución para un error que estaba recibiendo ...
Si está utilizando Windows + NodeJS + nodemon. Con IntelliJ - Configuración de ejecución.
ERROR: starting inspector on failed: address already in use
Cuando utilizo la versión 1.19.1 de nodemon, aparece el error. Cuando uso la versión 1.18.11 de nodemon, ¡funciona!
Buena suerte...
fuente
Simplemente agregue un nuevo script al
package.json
llamado nodemon (o elija su propio nombre)"scripts": { ... "nodemon": "nodemon ./bin/www" }
Luego vaya a Ejecutar / Depurar configuración y agregue la configuración npm . Conjunto
fuente
Tengo un desarrollo en mac y, como OdkoPP indica, lo hice funcionar
"scripts": { "build": "tsc", "dev": "nodemon src/index.ts --exec ts-node" },
Configuraciones de ejecución / depuración npm:
fuente