J'ai cherché dans la page des modules du wiki, mais je ne trouve rien de similaire à virtualenv (python) ou rvm.
Quelqu'un ici sépare node.js dans son propre env ? Je n'aime vraiment pas installer npm dans tout le système.
J'ai cherché dans la page des modules du wiki, mais je ne trouve rien de similaire à virtualenv (python) ou rvm.
Quelqu'un ici sépare node.js dans son propre env ? Je n'aime vraiment pas installer npm dans tout le système.
nodeenv - environnement virtuel pour node.js ( analogique virtualenv )
Cela avait l'air bien au début, mais je n'ai pas réussi à installer npm avec nodeenv en même temps que node.js est compilé (sur osx Lion). J'aurais probablement pu utiliser nvm install et installer npm séparément pour chaque nodeenv... au moment où j'ai pensé à essayer, j'avais déjà plusieurs versions de node faites avec d'autres moyens.
Peut être utilisé pour installer sur un environnement virtuel Python existant, de manière à ce que les node.js
est activé en même temps que l'environnement Python. Voir nodeenv -p
.
Nodeenv (en fait virtualenv+nodeenv) est également adapté aux utilisateurs de fish-shells puisque nave et les autres ne supportent pas d'autres shells que bash et zsh.
Si le fait d'avoir des paquets npm pour l'ensemble du système est votre principal problème, vous pouvez envisager d'utiliser la très cool commande 'bundle' avec npm. C'est plus proche de la congélation des gems ou de l'utilisation de bundler dans rails, plutôt que de rvm.
C'est très facile. Il suffit de créer un fichier package.json :
{ "name": "yourapp", "version": "0.0.1", "dependencies": {"jade": "0.4.1"}}
et ensuite exécuter :
npm bundle vendor
ou si votre version de npm est >= 1.0, exécutez :
npm install
pour geler dans le répertoire des fournisseurs. et ensuite utiliser :
require.paths.unshift('./vendor');
Il existe également quelques systèmes de gestion de version Node qui peuvent aider.
Consultez le site de Nave https://github.com/isaacs/nave
On peut aussi utiliser un NVM https://github.com/creationix/nvm
Il en existe également un appelé n https://github.com/visionmedia/n
Nvm fonctionne très bien si vous aimez avoir différentes versions de node.js et npm installées en même temps. Pour le reste, j'ai trouvé suffisant d'avoir les modules requis installés dans le répertoire du projet avec npm.
Si vous cherchez nvm
o n
et que vous voulez une commutation automatique lorsque vous changez de répertoire, regardez à avn
: github.com/wbyoung/avn
La réponse de bxjx est conceptuellement exacte. Cependant, veuillez noter que la commande bundle ne prend plus un répertoire. Elle toujours dépose des paquets dans le node_modules
afin que npm sache où les trouver plus tard (et puisse éviter la double installation des dépendances).
Toute solution impliquera probablement l'installation de npm et de nave "à l'échelle du système" (c'est-à-dire dans votre système d'exploitation). PATH
qui pourrait être dans ~
quelque part), mais en installant seulement votre dépendances spécifiques dans l'environnement virtuel.
J'ai répondu plus en détail sur la question github .
tl;dr : Le cas d'utilisation est valable et utile, et bien qu'il soit en grande partie présent, il n'est pas aussi bien servi qu'il pourrait l'être. Nous devrions nous assurer de bien y réfléchir et de le faire correctement.
Si vous aimez la simplicité, je recommande vraiment le programme Visionmedia. n On ne peut pas faire plus simple !
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.