Führen Sie den Knoten immer mit dem Flag --harmony aus

Führen Sie den Knoten immer mit dem Flag --harmony aus

Ich möchte Node.JS immer mit dem --harmonyFlag ausführen. Gibt es eine Möglichkeit, dieses Flag einfach standardmäßig zu aktivieren?

(Hinweis: Ich verwende Windows, daher habe ich nur Zugriff auf Cygwin oder Mingw als Shells.)

Antwort1

Wenn Sie interaktiv arbeiten möchten, können Sie eine Bash verwenden alias. Fügen Sie Folgendes in Ihre ein ~/.bashrc:

alias node="node --harmony"

(Für das Folgende: Beachten Sie, dass ich mit „ausführbar“ nicht nur Binärdateien oder „.exe-Dateien“ meine. „Ausführbare Dateien“ umfassen alles, was ausgeführt werden kann, ohne explizit einen Interpreter aufzurufen, einschließlich Skripts mit einem Shebang.)

Wenn Sie eine ausführbare Datei ausführen möchten, z. B. innerhalb eines anderen Skripts, können Sie ein Shell-Skript erstellen, das das Ziel mit dem zusätzlichen Flag startet:

Erstellen Sie ein nodeHarmonyund fügen Sie es in Ihren Suchpfad ein, zB /usr/local/bin:

#!/bin/sh

node --harmony "$@"

Dann chmod a+xes.

Führen Sie es dann aus nodeHarmony, wann immer Sie dieses Flag anhängen möchten. Wenn Sie die nodeausführbare Datei ersetzen möchten, können Sie sie wahrscheinlich umbenennen node(z. B. node_original), das Skript benennen nodeund es node_originalinnerhalb des Skripts verwenden.

Sie könnten auch das entsprechende Windows-Batch-Skript erstellen, das außerhalb von Cygwin/MinGW funktionieren würde:

@echo off

node --harmony %*

Dies würde sich ähnlich verhalten, könnte aber bei einigen Argumentkombinationen seltsame Effekte aufweisen, da die Liste zweimal analysiert würde - einmal bei der Ausführung des Batch-Skripts und einmal innerhalb des Skripts bei der Ausführung node. Einige WorkaroundsHier.

Antwort2

Wenn Sie bereit sind, node.js neu zu kompilieren, der Artikel So erreichen Sie Harmonie in Ihrem node.jssagt:

Sobald Sie den Quellcode haben, öffnen Sie ihn deps/v8/src/flag-definitions.hund suchen Sie nach Zeile 115. Ändern Sie das Flag von „false“ in „true“:

DEFINE_bool(harmony, true, "enable all harmony features")

Kompilieren Sie dann Node:

./configure && make && make install

Antwort3

Scheinbarhttps://www.npmjs.org/package/setflagskann verwendet werden, um die Flags zur Laufzeit zu setzen, jedochIch konnte es nicht installieren.

Antwort4

Warum konfigurieren Sie nicht diePaket.jsonmit einemSkripteBefehl?

Fügen Sie beispielsweise zu package.json Folgendes hinzu:

  "scripts": {
    "start": "node --harmony server.js"
  }

Führen Sie dann in cmd (im Projektverzeichnis) Folgendes aus:

npm starten

verwandte Informationen