Nie jestem pewien, czy to właśnie miałeś na myśli, ale skończyłem na tym pytaniu ponieważ nie mogłem zainstalować node_moduleswewnątrz katalogu mojego projektu, ponieważ został on zamontowany na systemie plików, który nie obsługuje dowiązań symbolicznych (folder „współdzielony” maszyny wirtualnej ).
Znalazłem następujące obejście:
- Skopiuj
package.jsonplik do folderu tymczasowego w innym systemie plików
- Biegnij
npm installtam
- Skopiuj wynikowy
node_moduleskatalog z powrotem do katalogu projektu, używając cp -r --dereferencedo rozwinięcia linków symbolicznych do kopii.
Mam nadzieję, że pomoże to komuś, kto trafi na to pytanie, szukając sposobu na przejście node_modulesdo innego systemu plików.
Inne opcje
Istnieje inne obejście, które znalazłem w problemie na githubie, z którym @Charminbear jest połączony , ale to nie działa, gruntponieważ nie jest obsługiwane NODE_PATHzgodnie z https://github.com/browserify/resolve/issues/136 :
powiedzmy, że masz /media/sf_sharedi nie możesz tam zainstalować dowiązań symbolicznych, co oznacza, że nie możesz w rzeczywistości zainstalować npm z,
/media/sf_shared/myprojectponieważ niektóre moduły używają dowiązań symbolicznych.
$ mkdir /home/dan/myproject && cd /home/dan/myproject
$ ln -s /media/sf_shared/myproject/package.json (możesz dowiązać symboliczne w tym kierunku, po prostu nie możesz go utworzyć wewnątrz / media / sf_shared)
$ npm install
$ cd /media/sf_shared/myproject
$ NODE_PATH=/home/dan/myproject/node_modules node index.js