I am using Node.js 10.1.0 and npm 6.0.0.
I have installed a package with npm install -g example-package
,
Will npx
look for it? What about npx -p example-package
, does it only look on npm registry?
I am using Node.js 10.1.0 and npm 6.0.0.
I have installed a package with npm install -g example-package
,
Will npx
look for it? What about npx -p example-package
, does it only look on npm registry?
2 Answers
Reset to default 12In Node.js v10
(npm@6
and probably later);
npx
will look global binaries, after looking locally.
But we can use -p
option to prevent looking globally, like:
npx -p name_of_module
Note
npx
is annpm
package runner that executes a<command>
(e.g. npm package binaries) by FIRST looking in localnode_modules/.bin
directory.So even if we remove it from
package.json
, as long as binary exists innode_modules/.bin
,npx
will continue using local.
NPX included in NPM 5.2 which looks in your local/node_modules folder to avoid version mismatch with the globally installed package version
If package is not available, npx will automatically install npm packages and it will not be looking for globally installed packages
Check this link for reference - https://blog.scottlogic.com/2018/04/05/npx-the-npm-package-runner.html
npx
is that you don't need to use-g
anymore. – zero298 Commented Jun 11, 2018 at 19:05