
常にフラグ付きで Node.JS を実行したいのです--harmony
が、このフラグをデフォルトで簡単にオンにする方法はありますか?
(注: Windows 上で実行しているため、シェルとしてアクセスできるのは Cygwin または Mingw のみです。)
答え1
対話的に実行する場合は、 bash を使用できますalias
。 に以下を入力します~/.bashrc
:
alias node="node --harmony"
(以下では、「実行可能ファイル」とは、バイナリや「.exe ファイル」だけを意味しているわけではないことに注意してください。「実行可能ファイル」には、明示的にインタープリターを呼び出さずに実行できるものすべてが含まれます。これには、シェバンを含むスクリプトも含まれます。)
たとえば別のスクリプト内で実行可能ファイルを実行する場合は、追加フラグを使用してターゲットを起動するシェル スクリプトを作成できます。
を作成しnodeHarmony
、検索パスに配置します。例/usr/local/bin
:
#!/bin/sh
node --harmony "$@"
それからchmod a+x
。
その後、nodeHarmony
そのフラグを追加したいときにいつでも を実行します。実行可能ファイルを置き換える場合はnode
、おそらく名前をnode
別の名前 (例node_original
) に変更し、スクリプトの名前を にしてnode
、node_original
スクリプト内で を使用します。
Cygwin/MinGW の外部で動作する同等の Windows バッチ スクリプトを作成することもできます。
@echo off
node --harmony %*
これは同様に動作しますが、リストが2回解析されるため、引数の組み合わせによっては奇妙な効果が生じる可能性があります。1回はバッチスクリプトの実行時、もう1回はスクリプトの実行時に解析されますnode
。回避策としては、ここ。
答え2
node.jsを再コンパイルする準備ができたら、記事 Node.jsで調和を実現する方法言う:
ソースコードを入手したら、開いて
deps/v8/src/flag-definitions.h
115 行目を探します。フラグを false から true に変更します。DEFINE_bool(harmony, true, "enable all harmony features")
次にNodeをコンパイルします。
./configure && make && make install
答え3
どうやらhttps://www.npmjs.org/package/setflags実行時にフラグを設定するために使用できますが、インストールできませんでした。
答え4
設定してみてはいかがでしょうかパッケージ.jsonとともにスクリプト指示?
たとえば、package.json に以下を追加します。
"scripts": {
"start": "node --harmony server.js"
}
次に、cmd (プロジェクト ディレクトリ内) で実行します。
npm スタート