düğümü ve düğümü farklı sürümleri var


15

Bu komutları ( curlbenim için çalışmıyor resmi yolu) kullanarak başarıyla js düğümünün en son sürümünü güncelleyin / yükleyin :

sudo npm cache clean -f
sudo npm install -g n
sudo n stable

sudo ln -sf /usr/local/n/versions/node/<VERSION>/bin/node /usr/bin/node

Ancak, düğümümün ve düğümümün sürümü farklı olur:

$ node --version
v5.0.0
$ nodejs --version
v0.10.25

Yeni düğüm yüklü gibi görünüyor /usr/local/bin/node, bu yüzden denedim:

sudo ln -s /usr/bin/nodejs /usr/local/bin/node

Ama geri dönüyor:

ln: failed to create symbolic link ‘/usr/local/bin/node’: File exists

Ayrıca bu bağlantıyı kullanın:

$ sudo ln -s /usr/bin/nodejs /usr/bin/node
ln: failed to create symbolic link ‘/usr/bin/node’: File exists

nodeGibi bağlı bazı çerçeveler kullanacağım Ionic. Hangi düğüm sürümünü kullanacak?

Bunu çözmek için ne yapmalıyım?

Yardımın için çok teşekkürler


Asıl soru imo, n'ye mevcut herhangi bir düğüm sürümünün üzerine yazmasını ve her ikisini de nodejsve noden tarafından yüklenen ikiliye nasıl bağlamasını söylerim . Ve eğer n bunu yapamazsa, en son teknoloji yaklaşımı nedir? Bir çalışma ortamında, düğüm ve düğüm farklı düğüm sürümlerini ele alıyorsa, hataya çok eğilimlidir.
17'de

Yanıtlar:


13

Benim için aynı sorunu çözen adımlar:

sudo apt-get remove nodejs
sudo ln -s /usr/bin/node /usr/bin/nodejs

açıklama

Bilgisayarınıza iki nodejs sürümü yüklediniz, bu yüzden bunlardan birini kaldırmanız gerekiyor. Senin durumun:

node v5.0.0 - you will keep this one
nodejs v0.10.25 - this you can remove

nodejsPaketi apt-get removekomut ile kaldırabilirsiniz . Bu ayrıca dosyayı kaldıracak /usr/bin/nodejsve hata iletinizi bir daha almayacaksınız.

Şimdi "/ usr / bin / nodejs" adında "/ usr / local / bin / node" kaynağını işaret eden sembolik bir bağlantı oluşturabilirsiniz. Örneğinizde, "ile" arasında "yanlış yol sırasına sahipsiniz

sudo ln -s source_file myfile

Bağlantı oluşturma hakkında daha fazla bilgi: Sembolik bağlantılar nasıl çalışır?


5

Hata:

ln: failed to create symbolic link ‘/usr/bin/node’: File exists

Eğer gerçekten Nodejs, iki sürümü vardır normalde nedeniyle bunların takma adıyla bir nodeve diğer nodejsbiz komutların sonucu görebileceğiniz gibi, takma node --versionve nodejs --version:

$ node --version
v5.0.0
$ nodejs --version
v0.10.25

bu nedenle zaten var olan bir dosya için sembolik bir bağlantı oluşturamazsınız.

Bunu çözmek için aşağıdakileri kullanarak iki paketi tamamen kaldırmanız gerekir:

sudo apt-get purge node
sudo apt-get purge nodejs
sudo rm -rf bin/node bin/node-waf include/node lib/node lib/pkgconfig/nodejs.pc share/man/man1/node

ve yalnızca nodejsşu komutu kullanarak paketi yeniden yükleyin :

sudo apt-get install nodejs

ve aşağıdakileri kullanarak sembolik bir bağlantı oluşturun:

ln -s /usr/bin/nodejs /usr/bin/node

veya nodejs-legacybu sorunu şu komutla çözecek olanı yükleyin :

sudo apt-get install nodejs-legacy 

Çok teşekkürler, bilgiyi eklediniz, sorunu kendim çözdüm. Kaldırdım.
16:15

0

Benim için nodekomut NodeJS tarafından nvmve nodejskomut NodeJS tarafındanapt-get

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.