Я не впевнений, що це те, що ви мали на увазі, але я опинився на цьому питанні, оскільки мені не вдалося встановити node_modulesвсередині мого каталогу проекту, оскільки він був змонтований у файловій системі, яка не підтримує символічні посилання (папка "спільна" VM ).
Я знайшов таке обхідне рішення:
- Скопіюйте
package.jsonфайл у тимчасову папку іншої файлової системи
- Біжи
npm installтуди
- Скопіюйте отриманий
node_modulesкаталог назад у папку проекту, використовуючи cp -r --dereferenceдля розширення символічних посилань у копії.
Я сподіваюся, це допоможе комусь іншому, хто закінчить вирішувати це питання, коли шукає спосіб перейти node_modulesдо іншої файлової системи.
Інші варіанти
Є ще одне обхідне рішення, яке я виявив у питанні github, до якого зв’язано @Charminbear , але це не працює, gruntоскільки воно не підтримує, NODE_PATHяк https://github.com/browserify/resolve/issues/136 :
скажемо, що у вас є, /media/sf_sharedі ви не можете встановити там символічні посилання, а це означає, що ви насправді не можете встановити npm,
/media/sf_shared/myprojectоскільки деякі модулі використовують символічні посилання.
$ mkdir /home/dan/myproject && cd /home/dan/myproject
$ ln -s /media/sf_shared/myproject/package.json (ви можете зробити посилання в цьому напрямку, просто не можете створити його всередині / media / sf_shared)
$ npm install
$ cd /media/sf_shared/myproject
$ NODE_PATH=/home/dan/myproject/node_modules node index.js