npm'yi en son sürüme nasıl geçirirsiniz? [çift]

109

Kurduğum Vagrant kutusunda npm ile ilgili sorunlar yaşıyorum. % Co_de% sürümünün biraz eski olduğunu fark ettim, bu yüzden sorunu en son sürümle kontrol etmek istedim.

Anladığım kadarıyla, npm 'yi kullanarak npm ' yi güncelleyebilmeniz, ancak komutun kullanılan npm install -g npm 'si üzerinde hiçbir etkisi olmayacaktır:

[email protected]:~$ npm -v
1.3.10
[email protected]:~$ sudo npm install -g npm
npm http GET https://registry.npmjs.org/npm
npm http 200 https://registry.npmjs.org/npm
npm http GET https://registry.npmjs.org/npm/-/npm-2.1.12.tgz
npm http 200 https://registry.npmjs.org/npm/-/npm-2.1.12.tgz
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
[email protected] /usr/local/lib/node_modules/npm
[email protected]:~$ npm -v
1.3.10

Ayrıca npm kullanmayı denedim ( NodeJS'imi en son sürüme nasıl güncelleyebilirim? ) güncelleştirmek, ancak n ve npm 'sini etkilemez:

[email protected]:~$ node -v
v0.10.25
[email protected]:~$
[email protected]:~$ sudo npm install -g n
/usr/bin/n -> /usr/lib/node_modules/n/bin/n
[email protected] /usr/lib/node_modules/n
[email protected]:~$ sudo n stable

     install : v0.10.33
       mkdir : /usr/local/n/versions/0.10.33
       fetch : http://nodejs.org/dist/v0.10.33/node-v0.10.33-linux-x64.tar.gz
   installed : v0.10.33

[email protected]:~$ node -v
v0.10.25
[email protected]:~$ npm -v
1.3.10

npm'yi en son sürüme güncellemek için ne yapmalıyım?

    
sordu Der Hochstapler 17.12.2014 10:39

10 cevap

128

Hala neden olduğunu anlamıyorum, ancak istenen etkiye sahip olması için npm install -g npm iki kez çalıştırmam gerekiyor:

[email protected]:~$ npm -v
1.3.10
[email protected]:~$ sudo npm install -g npm
npm http GET https://registry.npmjs.org/npm
npm http 200 https://registry.npmjs.org/npm
npm http GET https://registry.npmjs.org/npm/-/npm-2.1.12.tgz
npm http 200 https://registry.npmjs.org/npm/-/npm-2.1.12.tgz
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
[email protected] /usr/local/lib/node_modules/npm
[email protected]:~$ npm -v
1.3.10
[email protected]:~$ sudo npm install -g npm
/usr/bin/npm -> /usr/lib/node_modules/npm/bin/npm-cli.js
[email protected] /usr/lib/node_modules/npm
[email protected]:~$ npm -v
2.1.12
    
verilen cevap Der Hochstapler 17.12.2014 11:31
35

nodejs öğelerini npm'in kendisini, PPA'yı veya el ile güncelleyebilirsiniz.

npm :

Sahip olduğunuz mevcut sürümü kontrol edin:

node -v

Aşağıdakiler önbelleğinizi temizler.

sudo npm cache clean -f

n uygulamasını yükle

sudo npm install -g n

Bunu belirli bir sürümü yüklemesini söyleyebilirsin:

sudo n 0.8.11

Ya da sadece en son kararlı sürümü yüklemesini söyle. İkisi de biraz zaman alabilir.

sudo n stable

Gerçekten yükseltilmiş olup olmadığını görmek için şunu çalıştırın:

node -v

PPA :

Diğer seçenek, PPA’yı chris-lea’yle yüklemek; / p>

sudo add-apt-repository ppa:chris-lea/node.js  
sudo apt-get update  
sudo apt-get install nodejs

Bu PPA aşağıdaki dağılımları destekler: Ütopik (14.10), Güven (14.04), Saucy (13.10), Kükreyen (13.04), Quantal (12.10), Kesin (12.04), Tekirik (11.10), Natty (11.04), Lucid (10.04).

Manuel :

En son sürümü indirerek her zaman el ile güncelleyebilir ve yükleyebilirsiniz!

Referans :

verilen cevap blade19899 17.12.2014 11:38
32

İlk olarak npm install -g npm 'si yaptığınızda, kabuk (Bash), yolunuzda npm araması yapar, sistem paketi tarafından yüklenen /usr/bin/npm değerini bulur ve ardından npm ' nin yeni sürümünü yüklemek için bunu kullanır. Yeni sürüm /usr/local/bin/npm 'de yüklenecek.

Şimdi, yolunuz /usr/local/bin/ co.de /usr/bin/ değerine sahip olmalıdır, bu yüzden şimdi /usr/local/bin/ 'de güncellenmiş sürümü alacağını düşünürdünüz, değil mi? Yanlış.

Bash, ilk kez arama yaptıktan sonra yürütülebilir yolları CACHE yapar, bu nedenle npm 'yi ikinci kez söylerseniz, bu, /usr/bin/npm olarak bulunan önbelleğe alınmış sürümü kullanmaya devam eder.

Bash’e bu önbelleği temizlemesini ve tekrar yoldan geçmesini söylemek için hash -r ’i yapmanız gerekir.

npm 'ı yükledikten ve bunu yaptıktan sonra, shell'im npm ' in yeni sürümünü seçti.

sayesinde

    
verilen cevap Asfand Qazi 14.02.2015 12:54
15

NPM'yi tek bir komutla en son sürüme güncelleyin

npm sürümünüzü yükseltmek veya güncellemek için, yalnızca terminali girin:

sudo npm install [email protected] -g

NPM dokümanlarının altbilgisinde bahsedildiği gibi

    
verilen cevap Jonatas Eduardo Salgado 02.04.2016 19:53
12

Çoğu zaman bunu global komutla yükseltemiyorum. Ancak, benim için çalışılan paket, tüm sistem düğüm modüllerinin kaynağından yükseltiliyor:

npm'nin yüklü olduğu yeri bulun ve bu klasöre gidin

# Below command shows the destination (remove sed pipe to see the full path of npm-cli)
whereis npm | cut -c 6- | xargs readlink -f | sed 's/.\{19\}$//'

# Go in there and install it manually. In my case it was the folder below... 
# NOTE: on mac its in /usr/local/lib
cd /usr/lib
sudo npm install [email protected]

Herkes için güçlü tek liner (özellikle tembel insanlar)

cd 'whereis npm | cut -c 6- | xargs readlink -f | sed 's/.\{18\}$//''; cd ..; sudo npm install [email protected]
    
verilen cevap Tom Siwik 05.03.2015 15:20
1

Yaptığınız herhangi bir hile, Git kullanmayın, onları Composer terminal uygulamasında çalıştırıyorum. Kesinlikle işe yarayacak. Benim için npm install npm -g yaptı.

    
verilen cevap Gildas Niyigena 14.01.2016 19:58
1

npm 'yini yükseltmek için nodejs ' yi npm

içeren en son sürüme güncellemeniz gerekiyor.

Debian'da streç ve jessie bu betiği kullanır:

#install prerequisites
apt-get install apt-transport-https curl git lsb-release -y

#Install NodeJS from external repositories
DISTRO=$(lsb_release -c -s)
if [ "$DISTRO" == "stretch" ]
then
  DISTRO="jessie"
fi

if curl -f "https://deb.nodesource.com/node_7.x/dists/$DISTRO/Release" >/dev/null
then
  curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -
  echo "deb https://deb.nodesource.com/node_7.x $DISTRO main" > /etc/apt/sources.list.d/nodesource.list
  echo "deb-src https://deb.nodesource.com/node_7.x $DISTRO main" >> /etc/apt/sources.list.d/nodesource.list
  apt-get update
  # comment out the following line, if you installed nodejs 7 already (check with 'apt-cache policy nodejs')
  apt-get remove nodejs nodejs-legacy npm
  apt-get install nodejs -y
else
  echo -e "Your distribution is not supported by NodeJS. \nYou have to install a recent NodeJS version (>=4) manually. "
fi

Ubuntu'da, bu komut dosyasını İşte adresinden kullanabilirsiniz:

curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -
sudo apt-get install -y nodejs

önce kaynağı İşte adresinden görebilirsiniz

    
verilen cevap rubo77 21.01.2017 21:33
0

nodejs sürümüne yükseltiliyor v0.12.7

 # Note the new setup script name for Node.js v0.12
 curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -

 # Then install with:
 sudo apt-get install -y nodejs

nodesource.com kaynağından

    
verilen cevap Rémi B. 13.07.2015 12:04
0

Problemle yüzleşiyordum. Geçerli npm sürümüm 3.3.12 idi, ancak sudo npm install npm -g , sudo npm update npm -g denedim. Hiçbir şey işe yaramadı.%% Co_de% Her zaman npm --version aldım. Ubuntu 15.04'te dizinleri aradım ve farklı dizinde npm'nin iki sürümünü buldum.

  • v3.3.12 3.3.12 içinde
  • /usr/local/lib/node_modules/npm v3.6

Bu yüzden, daha eski npm dizinindeyken,% 3.12 ile /usr/lib/node_modules/npm kopyasını aldım. Sonra '/ usr / lib / node_modules' dizinindeyken mv npm npm_3312 yaptım.% Co_de% 'i yaptım ve sudo cp -r npm /usr/local/lib/node_modules/ aldım

: D

    
verilen cevap Ariful Haque 29.01.2016 10:47
0

Hazır olan bir şeyi yeniden yüklemek için herhangi bir neden göremiyorum, yalnızca kendisini güncellemek için paket yöneticisine yerleşik update -g 'i kullanın:

$ npm -v
2.15.1
$ sudo npm update -g npm
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
[email protected] /usr/local/lib/node_modules/npm
$ npm -v
3.10.9

Global bayrağın -g paketlerin önünde olduğundan emin olun. Geçmişte, paketin listesinden sonra bayrağı kaydetmeyen npm ile ilgili sorunlar yaşadım.

    
verilen cevap SmujMaiku 28.10.2016 19:06

Etiketlerdeki diğer soruları oku