¿Cómo instalar npm en un directorio especificado?
Es posible especificar un directorio de destino cuando se ejecuta npm install <package>
?
3 answers
Puede usar la opción --prefix
:
mkdir -p ./install/here/node_modules
npm install --prefix ./install/here <package>
El paquete(s) se instalará (n) en ./install/here/node_modules
. El mkdir
es necesario ya que npm podría de otra manera elegir un directorio node_modules
ya existente más arriba en la jerarquía. (Véase la documentación de npm en las carpetas.)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-02-19 22:20:44
En la documentación se indica: Utilice la opción de prefijo junto con la opción global :
El prefijo config por defecto es la ubicación donde está instalado el nodo. En la mayoría de los sistemas, esto es /usr/local. En Windows, este es el exacto ubicación del nodo.exe binario. En sistemas Unix, es un nivel más alto, dado que node normalmente se instala en {prefix}/bin / node en lugar de {prefijo}/nodo.exe .
Cuando el la bandera global está establecida, npm instala cosas en este prefijo. Cuando no está establecido, utiliza la raíz del paquete actual, o el directorio de trabajo actual si no está en un paquete ya.
(Énfasis por ellos)
Así que en su directorio raíz podría instalar con
npm install --prefix <path/to/prefix_folder> -g
E instalará la carpeta node_modules
en la carpeta
<path/to/prefix_folder>/lib/node_modules
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-04-26 07:40:42
A partir de la versión 3.8.6 de npm, puede usar
npm install --prefix ./install/here <package>
Para instalar en el directorio especificado. NPM crea automáticamente la carpeta node_modules
incluso cuando ya existe un directorio node_modules
en la jerarquía superior.
También puede tener un package.json
en el directorio actual y luego instalarlo en el directorio especificado usando la opción --prefix
:
npm install --prefix ./install/here
A partir de npm 6.0.0, puede utilizar
npm install --prefix ./install/here ./
Para instalar el paquete.json in current directory to "(en inglés)./install / here" directorio. Hay uno cosa que he notado en Mac que crea un enlace simbólico a la carpeta padre dentro del directorio node_modules. Pero, todavía funciona.
NOTA: NPM respeta la ruta que ha especificado a través de la opción --prefix
. Se resuelve según la documentación de npm en las carpetas, solo cuando npm install
se usa sin la opción --prefix
.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-05-03 08:07:38