node node.js npm

node.js - npm install node



¿Cambiar el directorio de instalación global predeterminado para los módulos node.js en Windows? (10)

En mi instalación de Windows, PATH incluye C:/Program Files/nodejs , donde está ejecutable node.exe . Puedo iniciar el node desde el shell, así como npm . Me gustaría que también se instalen nuevos ejecutables en C:/Program Files/nodejs , pero parece imposible de lograr.

Establecer las variables NODE_PATH y NODE_MODULES no cambia nada: las cosas todavía están instaladas en %appdata%/npm de forma predeterminada.

¿Cómo puedo cambiar la ruta de instalación global?


Borre la carpeta del nodo por completo de la carpeta de archivos del programa. Desinstale node.js y luego vuelva a instalarlo. cambiar la ruta de acceso de la variable de entorno PATH. elimine el archivo .npmrc de C: / users / sunombre de usuario


Debe usar este comando para establecer la instalación global de paquetes npm

(git bash) npm config --global set prefix </path/you/want/to/use>/npm

(cmd / git-cmd) npm config --global set prefix <drive:/path/you/want/to/use>/npm

También puede considerar la ubicación npm-cache justo al lado. (como sería en una instalación normal de nodejs en Windows)

( npm config --global set cache </path/you/want/to/use>/npm-cache git bash) npm config --global set cache </path/you/want/to/use>/npm-cache

(cmd / git-cmd) npm config --global set cache <drive:/path/you/want/to/use>/npm-cache


En Windows, si desea mover la carpeta npm o nodejs en el disco C a otra ubicación, pero aún así se asegura de que el nodo y la npm funcionen bien, puede crear un enlace simbólico como este: Abra el símbolo del sistema:

mklink /D "your_location_want_to_create_symlink" "location_of_node_npm_file"

Ejemplo:

mklink /D "C:/Users/MyUser/AppData/Roaming/npm" "D:/Nodejs Data/npm"

Ahora que ha creado un enlace simbólico para la carpeta npm, este enlace simbólico se referirá a D:/Nodejs Data/npm Todo funcionará bien.


Intenté la mayoría de las respuestas aquí, nada parece funcionar en mi caso. Así que cambié la ubicación temporal en mis variables env a C: / npm. Entonces comenzó a funcionar. Esta no es una buena idea sino una solución temporal.


La carpeta global predeterminada es C:/Users/{username}/AppData/Roaming/npm . Puede crear (si no existe) un archivo .npmrc en C:/Users/{username}/ y agregar prefix = "path//to//yourglobalfolder" . Tenga en cuenta que, en Windows, la ruta debe estar separada por double back-slash .


Puedes ver mi respuesta a esto en mi respuesta a otra pregunta .

En Windows, la ruta de instalación global está realmente en el directorio de perfil de su usuario

  • %USERPROFILE%/AppData/Roaming/npm
  • %USERPROFILE%/AppData/Roaming/npm-cache
  • ADVERTENCIA: si está realizando eventos programados u otra automatización como un usuario diferente, asegúrese de ejecutar la npm install como ese usuario. Algunos módulos / utilidades deben instalarse globalmente.
  • .../npm INSTALADOR: Puede que tenga que crear estos directorios o agregar el directorio .../npm a su ruta de usuario usted mismo.

Para cambiar la ubicación "global" para todos los usuarios a una ubicación global compartida más apropiada %ALLUSERSPROFILE%/(npm|npm-cache) (haga esto como administrador):

  • crear un [NODE_INSTALL_PATH]/etc/
    • esto es necesario antes de probar la npm config --global ... acciones
  • crear la (s) ubicación (es) global (es) para módulos npm
    • C:/ProgramData/npm-cache - los módulos npm irán aquí
    • C:/ProgramData/npm - las secuencias de comandos binarias para los módulos instalados globalmente irán aquí
    • C:/ProgramData/npm/node_modules - los módulos instalados globalmente irán aquí
    • establecer los permisos apropiadamente
      • administradores: modificar
      • usuarios autenticados: leer / ejecutar
  • Establecer la configuración de configuración global (Símbolo del sistema de administrador)
    • npm config --global set prefix "C:/ProgramData/npm"
    • npm config --global set cache "C:/ProgramData/npm-cache"
  • Agregue C:/ProgramData/npm a la variable de entorno de la ruta del sistema

Si desea cambiar la ubicación "global" de su usuario a la %LOCALAPPDATA%/(npm|npm-cache) lugar:

  • Crea los directorios necesarios
    • C:/Users/YOURNAME/AppData/Local/npm-cache - los módulos de npm irán aquí
    • C:/Users/YOURNAME/AppData/Local/npm - las secuencias de comandos binarias para los módulos instalados irán aquí
    • C:/Users/YOURNAME/AppData/Local/npm/node_modules - los módulos instalados globalmente irán aquí
  • Configurar npm
    • npm config set prefix "C:/Users/YOURNAME/AppData/Local/npm"
    • npm config set cache "C:/Users/YOURNAME/AppData/Local/npm-cache"
  • Agregue la nueva ruta npm a la PATH su entorno.
    • setx PATH "%PATH%;C:/Users/YOURNAME/AppData/Local/npm"

Sobre la base del concepto de instalación de chocolatey y la idea sugerida por @Tracker, lo que funcionó para mí fue hacer lo siguiente y todos los usuarios de Windows estaban contentos de trabajar con nodejs y npm .

Elija C:/ProgramData/nodejs como directorio de instalación para nodejs e instale nodejs con cualquier usuario que sea miembro del grupo de administradores.

Cree una carpeta llamada npm-cache en la raíz del directorio de instalación, que después de seguir lo anterior sería C:/ProgramData/nodejs/npm-cache .

Cree una carpeta llamada etc en la raíz del directorio de instalación, que luego de seguir lo anterior sería C:/ProgramData/nodejs/etc

Establezca la variable de entorno NODE como C:/ProgramData/nodejs .

Establezca la variable de entorno NODE_PATH como C:/ProgramData/nodejs/node_modules .

Asegúrese de que se %NODE% la variable de entorno %NODE% anteriormente creada anteriormente (o su ruta) a la variable de entorno %PATH% .

Edite %NODE_PATH%/npm/npmrc con el siguiente prefix=C:/ProgramData/nodejs contenido prefix=C:/ProgramData/nodejs

Desde el símbolo del sistema, configure la configuración global como ...

npm config --global set prefix "C:/ProgramData/nodejs"

npm config --global set cache "C:/ProgramData/nodejs/npm-cache"

Es importante que los pasos anteriores se realicen preferiblemente en secuencia y antes de actualizar npm ( npm -g install npm@latest ) o intentar instalar cualquier módulo npm .

Llevar a cabo los pasos anteriores nos ayudó a ejecutar nodejs como una instalación de todo el sistema, fácilmente disponible para todos los usuarios con los permisos adecuados. Cada usuario puede ejecutar node y npm según sea necesario.


Todo lo que necesita es leer la npm-folders . No quiero iniciar mi computadora portátil Win ahora, así que no puedo verificarlo, pero solo debe cambiar el prefix a c:/Program Files/nodejs en su archivo de configuración. Si desea cambiarlo globalmente para todos los usuarios, edite c:/Program Files/nodejs/npmrc ; de lo contrario, cree / edite c:/Users/{username}/.npmrc .

Pero este cambio probablemente tendrá algunos efectos secundarios, así que lea esta discusión antes. Creo que tu idea no es buena.


Usar un enlace simbólico de Windows desde las rutas C: / Users {username} / AppData / Roaming / npm y C: / Users {username} / AppData / Roaming / npm - caché al destino funcionó muy bien para mí.

Cómo agregar un enlace simbólico


tratando de instalar paquetes globales en C:/Program Files (x86)/nodejs/ me dio problemas de Ejecutar como Administrador , porque npm estaba tratando de instalar
C:/Program Files (x86)/nodejs/node_modules/

para resolver esto, cambie el directorio de instalación global a C:/Users/{username}/AppData/Roaming/npm :

en C:/Users/{username}/ , crea el archivo .npmrc con contenido:

prefix = "C://Users//{username}//AppData//Roaming//npm"

referencia

ambiente
Instalador nodejs x86 en C:/Program Files (x86)/nodejs/ en Windows 7 Ultimate N 64-bit SP1
node --version : v0.10.28
npm --version : 1.4.10