I have node.js 0.8.14 installed on Ubuntu 12.10. I created a directory in my home directory with a sub directory node_modules
. I want to install some local node modules there but running
npm install myModule
in this directory installs this module in /usr/local/lib/node_modules/
(same behavior as installing the module with the -g
flag
There is no node path in .bashrc
.
Any idea how I can install local node modules?
After some further research I found the solution.
Running the command npm config ls
revealed that the default config global=false
(you see the default config with npm config ls -l
) was overwritten by global=true
in /home/vsdev/.npmrc
and /usr/local/etc/npmrc
.
Reverting this to global=false
solved the issue.
npm install load all in node_modules then it might be version 3 behaviour http://blog.npmjs.org/post/110924823920/npm-weekly-5 or as mentioned by @vsdev so once you make sure it version 3 behaviour and u want to go with it then its fine else follow below
1- uninstall all modules.. into the node_modules folder in your project then execute: npm uninstall *
2- Tell npm to install with legacy bundling for this one install:
npm install --legacy-bundling
A "permanent" alternative:
Set your npm config to always use legacy bundling...
npm set legacy-bundling=true
.. and run as usual:
npm install
*fetching dependencies with legacy bundling will take a lot more time because many several different versions of the same dependencies will be installed.