2016-10-14 26 views

答えて

23

Node.jsバージョン6.3以降では、--inspect flagを使用すると、デバッグがはるかに簡単になりました。どこ一気実行可能命を見つける

  1. buildという名前の一気のタスクをデバッグする

    。 gulpがローカルにインストールされている場合、これはnode_modules/.bin/gulpになります。それ以外の場合は、端末でLinux/Macではwhich gulp、Windowsではwhere gulpを実行してください。

  2. 実行node --inspect --debug-brk ./node_modules/.bin/gulp build。必要に応じて、./node_modules/.bin/gulpをガルプインストールのパスに置き換えます。

  3. Chromeを使用して、コンソールに印刷されるURLを参照します。それはchrome-devtools://devtools/remote/serve_file/@xxxxxxxxx/inspector.html?experiments=true&v8only=true&ws=127.0.0.1:9229/xxx-xxx-xxxのように見えます。

--debug-brkフラグは、すぐにコードの実行を一時停止するために使用されます。これにより、タスクが完了する前にブラウザーを開き、ブレークポイントを設定する機会が与えられます。

また、Chromeの拡張子はNode.js Inspector Manager (NIM)で、手順3を参考にすることもできます。端末からURLをコピーして貼り付ける代わりに、デバッガをすぐに使用できるChromeタブが自動的に開きます。

+1

一度ロードされ、後にgulp.jsにブレークポイントを追加します( 'env.configPath)が必要です;' - あなたがソースでそれを見つけると、ブレークポイントを追加することができますので、あなたのgulpfileをロードします。 – TrueWill

+2

'chrome:// inspect'に行くと、devtoolsアドレスを知る必要はありません – Capripot

4

gulp-nodemonを使用している場合は、gulpファイルでこれを行うことができます。 execMapオプションを渡してください:

gulp.task('default', function() { 
    nodemon({ 
     script: 'server.js', 
     ext: 'js', 
     execMap: { 
      js: "node --inspect" 
     } 
    }) 
} 

これが役に立ちます。

5

webstormを使用している場合は、gulpパネルのタスクを右クリックして[デバッグ]を選択できます。

enter image description here

0

ありがとうuser2943490は、Windows上で私は、このバージョンは、私のために働いた:誰のための

node --inspect --debug-brk ./node_modules/gulp/bin/gulp.js --verbose

1

は、VSのコードを使用して1.10+

  1. オープンデバッグパネル。
  2. 設定アイコンをクリックします。
  3. コンフィグレーションの追加ボタンをクリックします。
  4. Node.js:Gulp Taskを選択します。

これは、launch.jsonファイルの外観です。

{ // Use IntelliSense to learn about possible attributes. // Hover to view descriptions of existing attributes. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "type": "node", "request": "launch", "name": "Gulp task", "program": "${workspaceFolder}/node_modules/gulp/bin/gulp.js", "args": [ "yourGulpTaskName" ] } ] }

関連する問題