Reputation: 3030
I was trying to install yeoman. But I met following errors.
C:\Users\xxxxx>npm install -g yo
npm WARN deprecated [email protected]: this package has been reintegrated into npm a
nd is now out of date with respect to npm
C:\Users\xxxxx\AppData\Roaming\npm\yo -> C:\Users\xxxxx\AppData\Roaming\npm\
node_modules\yo\lib\cli.js
> [email protected] postinstall C:\Users\xxxxx\AppData\Roaming\npm\node_modules\yo
> yodoctor
'yodoctor' is not recognized as an internal or external command,
operable program or batch file.
npm ERR! Windows_NT 6.1.7601
npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\xxxxx\\AppData
\\Roaming\\npm\\node_modules\\npm\\bin\\npm-cli.js" "install" "-g" "yo"
npm ERR! node v4.1.1
npm ERR! npm v3.3.7
npm ERR! code ELIFECYCLE
npm ERR! [email protected] postinstall: `yodoctor`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] postinstall script 'yodoctor'.
npm ERR! This is most likely a problem with the yo package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! yodoctor
npm ERR! You can get their info via:
npm ERR! npm owner ls yo
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! C:\Users\xxxxx\npm-debug.log
Then I tried to 'npm install -g yeoman-doctor' to bypass this error. After yeoman-doctor was installed, the yodoctor can be found like below.
C:\Users\xxxx>yodoctor
Yeoman Doctor
Running sanity checks on your system
√ Global configuration file is valid
√ NODE_PATH matches the npm root
x Node.js version
Your Node.js version is outdated.
Upgrade to the latest version: https://nodejs.org
√ No .bowerrc file in home directory
√ No .yo-rc.json file in home directory
√ npm version
Found potential issues on your machine :(
But unfortunately, the issue still happen when I re-tried to 'npm install -g yo'.
Could you tell me the workaround? thanks .
Upvotes: 2
Views: 6098
Reputation: 1
The issue I encountered was caused by a bad prefix value in my .npmrc file which was pointing to a non-existent version of Node. It completely busted my ability to globally install npm packages. Removing the prefix from my .npmrc file resolves the issue. This might be something the Yeomen Doctor could be taught to detect.
To set prefix value in .npmrc you have to use below command
set npm_config_prefix=""
Upvotes: 0
Reputation: 1650
The error show your npm was outdated. What you need is update your npm
first.
Try
npm -g update
or
npm -g install npm
Upvotes: 3