nvm is not compatible with the npm config - npm

I have node version v14.4.0 and npm version 6.14.5 ,
when I tried to switch to different version using
nvm install v11.0.0
and then
nvm use v11.0.0
It showed me following error
nvm is not compatible with the npm config "prefix" option: currently set to ""
Run `npm config delete prefix` or `nvm use --delete-prefix v11.0.0` to unset it.
I tried running those commands but the problem still persists.
Also when tried the command
nvm use
, It showed
No .nvmrc file found

Related

How to change the npm version for single project in vscode?

My current npm version is 6.14.13 and I need 6.14.14 version.
I tried "npm i npm#6.14.14".. Where to put this command?
install nvm (node version manager). and change node/npm version in terminal.
nvm use 14.18.0
// this will change node version in currently open terminal tab

How to fix 'command not found' for aws-cdk after running the npm install

I am trying to install the aws-cdk and in the terminal and I run the npm install -g aws-cdk. As stated here After npm runs, I get:
/usr/local/Cellar/node/9.8.0/bin/cdk -> /usr/local/Cellar/node/9.8.0/lib/node_modules/aws-cdk/bin/cdk
+ aws-cdk#0.31.0
updated 1 package in 1.636s
If I try to run cdk I get:
zsh: command not found: cdk
Installing as root worked for me:
sudo npm install -g aws-cdk
Make sure /usr/local/Cellar/node/9.8.0/bin is in your PATH
In my case, I added this to the end of my .bash_profile:
export PATH=$PATH:$(npm get prefix)/bin.
I did that based on information from a different thread.
If you're using nvm to manage your node versions, make sure that the CDK package is being installed in the same version of node you're currently using or the version you want to use.
The OP noted their CDK was getting installed in node/9.8.0:
Check the current node version running: nvm current.
If you see that the CDK installation location is different than the node version indicated by nvm current, you'll need to switch your node version using:
nvm use <node-version-where-cdk-is-installed>
In the OP's case, this would be nvm use 9.8.0.
What worked for me in mac was adding to the path the bin directory of globally installed node modules.
Install aws-cdk by:
npm install -g aws-cdk
Try to run it
cdk
no command found error
make or edit your .zshrc file in your user directory
add line to .zshrc with export PATH=$PATH:/{your_user_path}/.npm-global/bin
execute it source .zshrc
now cdk should work
Pay attention that it is mac based approach.

ng new didn't work, showing blank terminal screen

I want to create my first Angular project. I have a problem at the beginning, because when i go to the project folder and type:
ng new my-first-project
Nothing happens. I only see blank terminal:
My:
npm -v: 6.4.1
node -v: 10.11.0
ng -v: Mg++ version:
Mg++ 1.5beta1 (formerly MicroGnuEmacs Adv.)
I tried:
sudo npm uninstall -g angular-cli #angular/cli
npm cache clean
sudo npm install -g #angular/cli
but nothing has changed. I also tried the same with node 8.x.x however, the effect was the same.
I working on Ubuntu 16.0.4 and my default system language is different than English.
Try this
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
export PATH=~/.npm-global/bin:$PATH
source ~/.profile
Run this command in your terminal
export PATH=~/.npm-global/bin:$PATH
This is my solution. I Solve it installing last version node with nvm.
nvm install node --reinstall-packages-from=node
npm install -g #angular/cli

Yarn not installing in nvm version node version

I'm running into an issue with yarn when I change my nvm version of node.
I noticed when I check my ~/.nvm folder I see two node versions.
v8.11.0
v8.11.3.
I installed yarn globally. using npm install -g yarn when I was using v8.11.0.
I can see yarn in my
.nvm/versions/node/v8.11.0
But when I switch to nvm v8.11.3 or set my nvm alias default to v8.11.3
Yarn is no longer available. I tried doing a global install again hoping it would add it to my v8.11.3 folder but it keeps trying to add it to v8.11.0
I've even deleted folder v8.11.0 but it just recreates it when I run npm install -g yarn
How can I get it to install so I can use yarn using any node version switch in nvm
When you install a new node version using nvm and then used npm to install yarn, you need to reinstall the yarn for the new node version.
Try:
nvm install 8.11.3
nvm use 8.11.3
npm install -g yarn
This will install yarn in:
.nvm/versions/node/v8.11.3/
You can then switch between 8.11.0 and 8.11.3 and your yarn will still work.
The problem that OP described caused by the fact that globally installed packages lives within their respected namespace (their version), and it cannot be shared across versions. There are a few ways around this. The NON-RECOMMEND WAY is to install yarn via brew, apt or non-node package manager. Although it works, but things may break.
The RECOMMEND WAY is described below.
nvm has a very nice default packages installer. This will installed specified packages when installing a new node version using nvm.
create a text file at $NVM_DIR/default-packages, usually it is located at ~/.nvm/default-packages, with a list of npm packages to be installed.
The content may looks like the following
#vue/cli
create-react-app
firebase-tools
yarn
Documentation link here
try running nvm install --lts to install node's latest lts version, packages specified in the default-packages will be installed automatically.
Check to see if there is a ~/.npmrc file.
If so, delete the content in it.
I recently ran into this issue (on a mac). I had to use
brew install yarn --ignore-dependencies
and that did it for me. Yarn is available no matter what node version I switch to with nvm. Hopefully this helps someone. More information can be found here: https://yarnpkg.com/lang/en/docs/install/#mac-stable
Following the installation guide on official documentation:
If using nvm you can avoid the node installation by doing:
sudo apt update && sudo apt install --no-install-recommends yarn
Note: Due to the use of nodejs instead of node name in some distros, yarn might complain about node not being installed. A workaround for this is to add an alias in your .bashrc file, like so: alias node=nodejs. This will point yarn to whatever version of node you decide to use.
I faced similar issue on mac wherein node v14.20.0 was installed via nvm.
In case of node installation via nvm, it creates symlink target as shown below.
/Users/<user_username>/.nvm/versions/node/v14.20.0/bin/corepack -> ../lib/node_modules/corepack/dist/corepack.js
In such cases, remove existing symlink by executing following coo
rm /Users/<user_username>/.nvm/versions/node/v14.20.0/bin/corepack
Now install yarn via if Node.js <16.10
npm i -g corepack
In case Node.js >=16.10
corepack enable

npm can't find in my cmd after I install using nvm

I install npm using nvm by doing 'nvm install 6.11.2'. It said the installation is successful. But when I execute 'npm' in my prompt. It said command not found.
Where does nvm install npm? so that i can update the path for cmd.
C:\Users\john>nvm install 6.11.2
Downloading node.js version 6.11.2 (64-bit)...
Complete
Creating C:\Users\john\AppData\Roaming\nvm\temp
Downloading npm version 3.10.10... Complete
Installing npm v3.10.10...
Installation complete. If you want to use this version, type
nvm use 6.11.2
C:\Users\john> npm
'npm' is not recognized as an internal or external command,
operable program or batch file.
For nvm version 1.1.7
Usage:
nvm on : Enable node.js version management.
nvm off : Disable node.js version management.
Try nvm on .
You need to open a new command prompt to pick up the new environment variables.