ノードを更新しました(v8.1.2)。 NTVSを使用して以前のテストプロジェクトをnodejsでデバッグする場合(Visual Studio 2017で)、次のエラーが発生しました。
StandardError:(node:5292)[DEP0062] DeprecationWarning:
node --debug
およびnode --debug-brk
は無効です。代わりにnode --inspect
またはnode --inspect-brk
を使用してください。
問題は明らかです。ツールはnode --debug
を実行してプロジェクトを開始しようとします。
問題は、Visual Studio 2017でnode --debug
をnode --inspect
に変更してテストを実行するにはどうすればよいですか?
また、スクリプト引数に--inspect
を追加しても問題を解決できないことを述べたはずです。
これは私がしました:
1。 mv /usr/local/bin/node /usr/local/bin/node_bin
2。 echo > /usr/local/bin/node
3。 editor /usr/local/bin/node
スクリプトを挿入:
#!/bin/bash
## the script converting parameters for nodejs new version
##
new_name="node_bin";
eval _options="(" $(echo -e $@) ")"
_node=$(whereis -b $new_name|awk '/^'$new_name':/{print $2}');
eval _version="(" $(echo -e $($_node --version|sed 's/[^0-9]/ /g')) ")";
# local values
old_options=( "--debug" "--debug-brk" );
new_options=( "--inspect" "--inspect-brk" );
_opt=();
function filtr() {
_opt=${_options[@]};
for ((get_i=0; get_i != ${#old_options[@]}; get_i++))
do
if [ ${new_options[$get_i]} = "" ];
then
_opt=${_opt[@]};
else
_opt=$( echo -e ${_opt[@]}|sed 's/'${old_options[$get_i]}'/'${new_options[$get_i]}'/g');
fi
done
}
function convert() {
if [ $(echo -e ${#_options[@]}) = 0 ];
then
$_node;
else
filtr;
$_node $(echo -e ${_opt[@]})
fi
exit 0;
}
if (( ${_version[0]} >= 7 ));
then
convert;
fi
exit 0;
chmod ugo+x /usr/local/bin/node
これと同じ問題があり、VS2017バージョン15.2に更新することで修正されました。
Nodejsを7.0.0以下にダウングレードする必要があります。 WindowsでNVMを使用します。これを参照してください post 。
コンピュータ上に複数のノードのバージョンを置くことができます。
幸運!
ChromeのDevToolsを使用して、次のようにデバッグできます。
開始Node with --inspect option ...
例:$node --inspect app.js
。次のようなコンソールプリントアウトが表示されます。
Ws://127.0.0.1:9229/2558baab-1141-4db3-8d10-771586f876a6でリッスンするデバッガー
Chromeブラウザを開いてchrome://inspect
を参照します。[ノード専用のDevToolsを開く]リンクをクリックします。
IDE vscを最新バージョン(v1.13)に更新する必要があります。ノードのバージョンはv8.0.0です。この問題を解決できます。