tutorial nodejs node mac instalar and macos node.js npm osx-mountain-lion yeoman

macos - nodejs - node js mac tutorial



Cómo reparar "yo: comando no encontrado" después de instalar Yeoman (8)

Siguiendo estas instrucciones, traté de instalar yeoman usando npm dos veces: http://yeoman.io/learning/index.html

Después de la primera falla, desinstalé el nodo usando estas instrucciones: ¿Cómo desinstalo completamente Node.js y lo vuelvo a instalar desde el principio (Mac OS X)? Luego, instalé nvm y node / npm (a través de nvm) con un error:

[Yeoman Doctor] Uh oh, I found potential errors on your machine --------------- [Error] NPM root value is not in your NODE_PATH [info] NODE_PATH = /Users/joanna/.nvm/v0.10.22/lib/node_modules:. NPM root = /Users/joanna/.node/lib/node_modules [Fix] Append the NPM root value to your NODE_PATH variable Add this line to your .bashrc export NODE_PATH=$NODE_PATH:/Users/joanna/.node/lib/node_modules Or run this command echo "export NODE_PATH=$NODE_PATH:/Users/joanna/.node/lib/node_modules" >> ~/.bashrc && source ~/.bashrc

Pegué ese comando, y luego ejecuté npm install -g yo otra vez.

Después de seguir las instrucciones del sitio de Yeoman otra vez, todavía no puede encontrar yeoman. Recibo este error: -bash: yo: comando no encontrado

¿Qué está mal? El doctor Yeoman dice: "¡Todo se ve bien!"


Compruebe dónde está instalada su npm :

where npm

Ejecutando sobre el comando aparecerá una lista del directorio donde está npm , de la siguiente manera:

/usr/local/Cellar/node/5.1.0/libexec/npm/bin/npm

Copie la carpeta path to bin y exporte lo mismo que una variable PATH , como se muestra a continuación:

export PATH=$PATH:/usr/local/Cellar/node/5.1.0/libexec/npm/bin


Después de probar la sugerencia anterior, noté que yeoman se instaló, como se esperaba, en /Users/joanna/.node/bin/yo . Configuré enlaces simbólicos a yo, gruñido y bower en /usr/local/bin con

ln -s /Users/joanna/.node/bin/yo /usr/local/bin/yo ln -s /Users/joanna/.node/bin/grunt /usr/local/bin/grunt ln -s /Users/joanna/.node/bin/bower /usr/local/bin/bower

Todo funciona ahora, pero me preocupa que los enlaces puedan causar problemas en el futuro. ¿Hay una mejor solución?


El origen del problema es que tiene establecido NODE_PATH mientras usa NVM al mismo tiempo. Cuando utiliza NVM, no debe tener una variable NODE_PATH en absoluto, ya que NVM instala paquetes globales en su versión raíz específica.

Elimine todos los paquetes que están en su NODE_PATH, elimine la variable de entorno e instale yo y los generadores o cualquier otro paquete global que necesite. Verá que deja de quejarse y todo termina en el subdirectorio nvm que coincide con la versión actual.

Cuando empiece a usar una versión de Nodo diferente en NVM, vuelva a instalar los paquetes globales. Esto mantendrá todo ordenado ordenadamente por versión como debe ser.

Más información sobre esta discusión aquí: https://github.com/creationix/nvm/pull/97


Para mí en Ubuntu solo lo siguiente funcionó para mí ...

Ubuntu

Probado en Ubuntu 14.04.2

Esta fue una instalación básica de Ubuntu 14.04.2 en VirtualBox usando ubuntu-trusty-64.

Acababa de instalar node y npm fresh y estaban funcionando bien.

npm install -y -g yo echo export PATH="$HOME/npm/bin:$PATH" >> ~/.bashrc npm config set prefix ~/npm echo "export NODE_PATH=$NODE_PATH:/home/$USER/npm/lib/node_modules" >> ~/.bashrc && source ~/.bashrc npm install -y -g yo

sí, tuve que instalar yeoman, solucionar los problemas de ruta, luego reinstalar yeoman.

Las explicaciones están arriba de Oleg Tikhonov y bfred.it


Solía ​​:

$HOME/npm/bin

¡Y funcionó!

En MAC OSX


Solo para agregar, estoy usando OS X 10.11.1, el código mencionado por steve también funciona para mí.

npm install -y -g yo echo export PATH="$HOME/npm/bin:$PATH" >> ~/.bashrc npm config set prefix ~/npm echo "export NODE_PATH=$NODE_PATH:/home/$USER/npm/lib/node_modules" >> ~/.bashrc && source ~/.bashrc npm install -y -g yo


Todo lo que tenía que hacer era agregar esta línea a .bash_profile

export PATH="$PATH":~/.node/bin

Puede ejecutar esto para agregarlo automáticamente:

printf "/nexport PATH=/"/$PATH/":%s/n" ~/.node/bin >> ~/.bash_profile

Probado en OS X 10.9, 10.10, 10.11 y Ubuntu 14.04


Version corta:

En su shell, escriba los siguientes comandos:

  1. npm config set prefix ~/npm

  2. echo "export NODE_PATH=$NODE_PATH:/home/$USER/npm/lib/node_modules" >> ~/.bashrc && source ~/.bashrc

  3. Luego reinstala Yeoman:

    npm install -g yo

¡Entonces todo debería funcionar bien!

Explicación:

Tuvo una condición similar, excepto que el comando yo sí funcionó, pero los generadores instalados no aparecieron después de instalarlos, esto resolvió el problema.

El problema es que su ruta de npm está configurada en / usr / local, que es un directorio que requiere privilegios de raíz / sudo, ya que usted es un comando de usuario, no debe ejecutarse como un superusuario, y si intenta corre sudo yo , Yeoman te dirá eso explícitamente.

También traté de chown -R $USER:$USER /usr/local , y chmod -R /user/local +rw , pero ninguno ayudó.

Tenga en cuenta que los módulos de nodo (los generadores yo también son módulos de nodo) que se instalaron previamente en / usr / local podrían no estar disponibles y requerirán volver a instalarlos.