Eu sempre quero executar o Node.JS com o --harmony
sinalizador. Existe uma maneira de ativar facilmente esse sinalizador por padrão?
(Nota: estou executando no Windows, portanto, só tenho acesso ao Cygwin ou Mingw como conchas.)
Se você está falando sobre executar interativamente, pode usar um bash alias
. Coloque isso no seu ~/.bashrc
:
alias node="node --harmony"
(Para o seguinte: observe que quando digo "executável", não me refiro apenas a binários ou "arquivos .exe". "Executáveis" incluem qualquer coisa que possa ser executada sem a necessidade de chamar explicitamente um intérprete, que inclui scripts com um shebang. )
Se você deseja executar um executável, por exemplo, dentro de outro script, você pode criar um script de shell que inicie o destino com o sinalizador extra:
Crie um nodeHarmony
e coloque-o no seu caminho de pesquisa, por exemplo /usr/local/bin
:
#!/bin/sh
node --harmony "$@"
Então chmod a+x
isso.
Em seguida, execute nodeHarmony
sempre que desejar que o sinalizador seja anexado. Se você deseja substituir o node
executável, provavelmente poderá renomear node
para outra coisa (por exemplo node_original
), nomear o script node
e usá-lo node_original
.
Você também pode criar o script em lote equivalente do Windows, que funcionaria fora do Cygwin / MinGW:
@echo off
node --harmony %*
Isso se comportaria de maneira semelhante, mas poderá exibir efeitos estranhos com algumas combinações de argumentos, porque a lista seria analisada duas vezes - uma vez ao executar o script em lote e uma vez dentro do script ao executar node
. Algumas soluções alternativas aqui .
Se você estiver pronto para recompilar o node.js, o artigo Como obter harmonia em seu node.js diz:
Depois de obter o código-fonte, abra
deps/v8/src/flag-definitions.h
e procure a Linha 115. Altere o sinalizador de falso para verdadeiro:DEFINE_bool(harmony, true, "enable all harmony features")
Em seguida, compile o Node:
./configure && make && make install
Aparentemente, https://www.npmjs.org/package/setflags pode ser usado para definir os sinalizadores em tempo de execução, no entanto, não consegui instalar .
Você pode editar o arquivo node.js e:
Procure uma variável que verifique sua configuração como "--harmony" ou "harmonia", algo como:
if (variable_name == 'harmony') ...
Defina esta variável anteriormente no código:
var this_variable_name = 'harmony';
Por que você não configura o package.json com um comando scripts ?
Por exemplo, adicione ao package.json:
"scripts": {
"start": "node --harmony server.js"
}
Em seguida, execute no cmd (no diretório do projeto):
início npm