2016-07-18 17 views
0

Ich habe in eine Straßensperre mit einem neuen Team, mit dem ich arbeite, die eine Knoten-App unterstützt. Die App wird über Gulp gestartet, und das Setup ist so, dass es ein "zentrales" NPM-Modul gibt, das eine Menge Schluckaufgaben und einen "Server" definiert, und unsere App installiert einfach dieses Paket und unser Code wird als " Plugin "zum Server.Wie debuggen App Start mit Gulp

In unserem gulpfile.js, haben wir so etwas wie:

var gulp = require('gulp'); 
var workflow = require('base-workflow'); 

workflow.use({ gulp: gulp }); 
gulp.task('default'), ['base:default']); 
...more stuff 

Wo base:default in und ein paar Hapi Server gezogen werden schließlich gestartet (eine als "Web" app, eine als „Rest "Proxy-App zu einem echten Java-basierten REST-Dienste). Ich möchte node-inpector einrichten, damit ich den Start der App beheben kann, weil ich festgestellt habe, dass die neuesten Versionen ihrer Basispakete nicht Mac-kompatibel sind.

Was ich versucht habe, ist gulp-node-inspector mit folgenden Änderungen zu installieren:

var gulp = require('gulp'); 
var nodeInspector = require('gulp-node-inspector'); 
var workflow = require('base-workflow'); 

workflow.use({ gulp: gulp }); 
gulp.task('default'), ['base:default']); 
gulp.task('debug', ['default'], function() { gulp.src([]).pipe(nodeInspector({debugBrk: true})); }); 
...more stuff 

und auch:

var gulp = require('gulp'); 
var nodeInspector = require('gulp-node-inspector'); 
var workflow = require('base-workflow'); 

workflow.use({ gulp: gulp }); 
gulp.task('default'), ['base:default']); 
gulp.task('debug', function() { gulp.src(['default']).pipe(nodeInspector({debugBrk: true})); }); 
...more stuff 

aber keines dieser Werke. Ein Teil davon ist wahrscheinlich mein mangelndes Verständnis von Gulp. Weiß jemand wie ich diese App debuggen kann?

Antwort

0

Ich verbrachte einige Zeit damit, zu googeln und die verschiedenen Lösungen auszuprobieren.

How to debug gulpfile.js

Dies war der einzige, den ich eigentlich erlaubt zu meinem „Debugger“ Befehl in meinem schluck Aufgabe getroffen: am Ende derjenige, der auf dieser Seite für mich war die akzeptierte Antwort ist gefunden.

Ich sollte auch beachten, dass ich "node-Inspector" vollständig deinstallieren und neu installieren musste; Es gab ein Versions-Problem, und als ich kurz davor war, es zu lösen, bekam ich einen "Kann nicht finden Modul" -Fehler, weil die Version von Node-Inspector dazu führte, dass es auf den falschen Ordner zeigte. Sobald ich deinstalliert und neu installiert habe (über npm), dann hat es funktioniert. In meinem Fall habe ich auf einem Windows-Rechner bin und der Befehl, der wie folgt gearbeitet sah:

Knoten-debug C: \ myPathWhereGulpfileDotJsExists \ node_modules \ schluck \ bin \ gulp.js --gulpfile C: \ myPathWhereGulpfileDotJsExists \ gulpfile Js myTestTaskContainingDebuggerCommand

0

Maby diese Lösung helfen Ihnen

node --inspect --debug-brk ./node_modules/gulp fonts 
0

der beste Weg, dies jetzt zu tun ist, eine debugger; an den Ort in der Datei hinzuzufügen, die Sie einen Haltepunkt hinzufügen möchten, oder legen Sie es manuell Sobald der Debugger mit setBreakpoint('gulpFile.js', 1)

gestartet wurde

Dann einfach

node inspect --inspect-brk $(which gulp) taskName 
c 

Weitere Informationen zum Debuggen mit Knoten here