node.js - application - webstorm debug node
¿Cómo puedo depurar mi aplicación Meteor usando el IDE de WebStorm? (6)
¿Alguien puede proporcionar una breve lista de pasos sobre cómo conectar una aplicación Meteor al depurador WebStorm, por favor?
Hay un bug con las versiones antiguas de Webstorm para depurar el lado del servidor de Meteor 1.2.x. La última versión de Webstorm (11.0.3) lanzada el 24 de diciembre de 2015 lo solucionó. Las notas de la versión se pueden encontrar aquí: https://confluence.jetbrains.com/display/WI/WebStorm+143.1559.5+Release+Notes
Ahora puedo depurar sin ningún problema desde Webstorm :)
Las otras respuestas están ahora desactualizadas. No agregue una configuración de depuración de Node.js como se describe anteriormente, ni se moleste con spyjs.
Si está utilizando Webstorm 9.0, es tan simple como ir a Ejecutar -> Depurar -> Editar configuraciones ..., haga clic en el signo más, haga clic en "Meteor".
WebStorm también puede pedirle que instale un complemento de navegador, pero eso es solo para la depuración del lado del cliente; simplemente agregue un punto de interrupción en el código del lado del servidor y verá que funciona de manera inmediata.
JetBrains ha actualizado el video al que estaba vinculado en la respuesta anterior de Dan Dascalescu, y te muestra el proceso que acabo de describir.
Para las aplicaciones que usan webpack:webpack
, el uso del perfil de depuración Meteor
de WebStorm no pareció funcionar.
Mi configuración utiliza webpack:webpack
v1.0.12, Meteor v1.3.0 y WebStorm 2016.1, pero es probable que funcione con versiones posteriores (tenga en cuenta que se publicó una solución para este problema en v1.0.12, por lo que es probable que las versiones anteriores no funcionen con este procedimiento).
Esto es lo que hice para que funcione:
Cree un archivo
webpack.json
en la raíz del proyecto.Debe incluir la configuración de
devtool
, que genera mapas de origen que ayudan en la depuración. El resto puede ser cambiado de acuerdo a su configuración específica.{ "root": "src", "devServer": { "host": "localhost" }, "devtool": "source-map" }
Crear una configuración de depuración:
Node.js Remote Debug, puerto
5858
(el puerto es configurable).Ejecutar
meteor debug
Puede especificar un puerto utilizando
--debug-port <port number>
.Ver la
meteor help debug
para los detalles completos.Conecta WebStorm al depurador
Golpea tus puntos de ruptura y regocíjate.
Puede probar el complemento spyjs para Webstorm: http://blog.jetbrains.com/webstorm/2014/04/spy-js-webstorm-secret-service/
WebStorm 9 tendrá soporte Meteor. Si bien WS 9 aún no se lanzó (a partir del 7 de octubre de 2014), hay un programa de acceso temprano para WS 9 .
Lea el blog JetBrains WebStorm que describe algunas de las funciones de soporte de Meteor e incluye un breve video.
Soy nuevo en Meteor, WebStorm (y JavaScript para el caso) y he estado usando WS 9 EAP build 138.2406 durante un par de semanas. Puedo iniciar mi proyecto desde el IDE, establecer puntos de interrupción, revisar el código, inspeccionar valores, saltar a definiciones y realizar terminaciones. Es muy útil.
WebStorm es el único IDE con soporte nativo para la depuración del código del servidor Meteor - verifique este video . Incluso en Windows, la depuración es muy simple:
WebStorm 9+
Vaya a Ejecutar -> Depurar -> Editar configuraciones ..., haga clic en el signo más, haga clic en "Meteor". Puede agregar una variable de entorno como ROOT_URL si lo necesita.
Tormenta web mayor de 9
Esta respuesta se mantiene sólo para fines históricos. Debe actualizar WebStorm.
En WebStorms anteriores, solía tener que crear una configuración de depuración Node.js.
en el servidor, exporte la variable de entorno
NODE_OPTIONS=--debug=47977
. Por ejemplo,NODE_OPTIONS=--debug=47977 meteor # Linux/Mac set NODE_OPTIONS=--debug=47977 & meteor` # Windows
cree una configuración de ejecución / depuración de WebStorm / PhpStorm utilizando el puerto anterior (47977) y el servidor host. Deja 127.0.0.1 si estás depurando localmente.
- en WebStorm, Ejecutar -> Depurar <myapp>, o presionar Mayús + F9. Asegúrese de que vea "Conectado a <su host> en el panel Depurar
Ahora puede establecer puntos de interrupción, tener acceso a variables locales, etc.
Para la depuración del cliente, solo use el depurador de Chrome o Firebug.
Solución de problemas
Process disconnected unexpectedly
: esto sucede cuando el meteorito se reinicia automáticamente debido a la falta de soporte específico para Meteor. Simplemente ejecute -> Depurar <myapp>, o presione Shift + F9 nuevamente.no puede conectarse al servidor; asegúrese de que las reglas del firewall permitan las conexiones entrantes a cualquier puerto que elija para el depurador Node.js (47977 aquí).