No estoy 100% seguro, pero creo que instalé el nodo v5 desde el instalador de Windows en las PC de mi hogar y mi oficina.
En mi PC doméstica, las instalaciones globales ocurren por debajo de% APPDATA%:
(dev) go|c:\srv> which lessc
c:\users\bjorn\appdata\roaming\npm\lessc
c:\users\bjorn\appdata\roaming\npm\lessc.cmd
mientras estoy en la PC de mi oficina, van debajo de los archivos de programa:
(dev) go|w:\srv> which lessc
c:\program files\nodejs\lessc
c:\program files\nodejs\lessc.cmd
Necesito proporcionar la ruta completa a varias de estas herramientas globales al observador de archivos de PyCharm, y dado que el archivo del proyecto que compartí, tendría sentido no tener recursos globales en una carpeta de usuario.
¿Por qué las instalaciones globales terminarían en carpetas diferentes y cómo puedo forzarlas a una ubicación que sea común para todos los miembros del equipo?
Respuestas:
Según: https://docs.npmjs.com/files/folders
Los documentos pueden estar un poco desactualizados, pero explican por qué las instalaciones globales pueden terminar en diferentes directorios:
(dev) go|c:\srv> npm config ls -l | grep prefix ; prefix = "C:\\Program Files\\nodejs" (overridden) prefix = "C:\\Users\\bjorn\\AppData\\Roaming\\npm"
Según las otras respuestas, puede parecer que la anulación es ahora la ubicación predeterminada en Windows y que es posible que haya instalado mi versión de oficina antes de que se implemente esta anulación.
Esto también sugiere una solución para hacer que todos los miembros del equipo tengan globales almacenados en la misma ruta absoluta en relación con su PC, es decir (ejecutar como Administrador):
mkdir %PROGRAMDATA%\npm setx PATH "%PROGRAMDATA%\npm;%PATH%" /M npm config set prefix %PROGRAMDATA%\npm
abra una nueva ventana de cmd.exe y reinstale todos los paquetes globales.
Explicación (por lineno.):
setx .. /M
para establecer la ruta del sistema (en HKEY_LOCAL_MACHINE). Esto es lo que requiere que lo ejecutes en un shell con permisos de administrador.npm
que uses este nuevo camino. (Nota: la carpeta no está visible en% PATH% en este shell, por lo que debe abrir una nueva ventana).fuente
setx PATH "%PROGRAMDATA%\npm;%PATH%" /M
no antepondrá un nuevo valor, pero lo reemplazará todo (en PowerShell).Estas son rutas típicas de npm si instala un paquete globalmente:
fuente
%APPDATA%
está debajo de una carpeta de usuario, y PyCharm no parece aceptar variables de entorno, así que supongo que esto no es válido.cmd_auto_file
unWindows PowerShell Script
archivo genérico, un archivo y un archivo en"$env:APPDATA\npm"
Simplemente presione el botón de Windows y escriba% APPDATA% y escriba enter.
Arriba está la ubicación donde puede encontrar la carpeta \ npm \ node_modules. Aquí es donde se ubican los módulos globales en su sistema.
fuente
%PROGRAMFILES%\nodejs
, que es mi primera pregunta (¿por qué terminan en carpetas diferentes en las PC de mi hogar / oficina?). El contexto de mi pregunta (como se indica ...) es que necesito proporcionar la ruta a estas herramientas instaladas globalmente de npm al IDE de PyCharm, para que otros miembros del equipo se beneficien de que las configure correctamente para nuestros proyectos. Dado que (a) PyCharm no permite env vars al especificar ejecutable, y (b)%APPDATA%=c:\Users\bjorn\..
no puedo usar APPDATA aquí.Si solo está tratando de averiguar dónde está instalando npm su módulo global (el título de este hilo), mire el resultado al ejecutar
npm install -g sample_module
fuente
npm config ls -l | grep prefix
e incluso si no fuera así, el procedimiento correcto sería hacer una nueva pregunta con un enfoque más estrecho ...