Node.js'yi tamamen nasıl kaldırırım ve baştan yeniden yüklerim (Mac OS X)


1290

Demleme düğümünü ve NVM v0.6.19'u yükledikten sonra bile düğümümün sürümü her zaman v0.6.1-pre.

Düğüm sürümüm:

node -v
v0.6.1-pre

NVM bunu söylüyor (bir bash terminaline ilk kez düğüm sürümünü yükledikten sonra):

nvm ls
v0.6.19
current:    v0.6.19

Ama bash'ı yeniden başlattığımda, gördüğüm şey bu:

nvm ls
v0.6.19
current:    v0.6.1-pre
default -> 0.6.19 (-> v0.6.19)

Peki bu hayalet düğümü 0.6.1 öncesi sürümü nerede ve bundan nasıl kurtulabilirim? Ben bir proje üzerinde çalışabilmeniz için NPM üzerinden kütüphaneleri kurmaya çalışıyorum.

NVM'den önce güncellemek için BREW kullanmayı brew updateve kullanarak brew install node. Benim "düğüm" dizini ve benim /usr/local/include"düğüm" ve "düğüm_modülleri" silmeyi denedim /usr/local/lib. Bu talimatları izleyerek npm'i kaldırıp yeniden yüklemeyi denedim .

Tüm bu çünkü "zipstream" kütüphanesini yüklemek için düğümün eski bir sürümünü güncellemeye çalışıyordu. Şimdi kullanıcılar dizinimde klasörler var ve NVM 0.6.19 kullandığını söylemesine rağmen STILL düğümü sürümü güncel değil.

İdeal olarak, nodejs, npm ve nvm'yi kaldırmak ve her şeyi sıfırdan sistemime yeniden yüklemek istiyorum.



/ usr / bin / node başka bir tane ...
Aaron Blenkush

1
bu, pkg dosyası aracılığıyla düğümü kim yüklerse yardımcı olabilir. superuser.com/questions/36567/…
karthikeayan

Mac 10.13.5 sürümü var / Users / myusername / node_modules Bu klasörü de silmeli miyim? Bu konuda arama yaptım ama kimse bu sorunla karşı karşıya görünüyor gibi görünüyor
Vikramvi

@Pacerier, Mac OS 10.13.5
vikramvi

Yanıtlar:


1699

Görünüşe göre, bir orada /Users/myusername/localbir içeriyordu klasör includeile nodeve libile nodeve node_modules. Nasıl ve neden /usr/localklasörümde oluşturulduğunu bilmiyorum.

Bu yerel referansların silinmesi fantom v0.6.1-pre'yu düzeltti. Birinin açıklaması varsa, bunu doğru cevap olarak seçeceğim.

DÜZENLE:

Ek talimatları da uygulamanız gerekebilir:

sudo rm -rf /usr/local/{lib/node{,/.npm,_modules},bin,share/man}/{npm*,node*,man1/node*}

eşdeğerdir (yukarıdaki ile aynı) ...

sudo rm -rf /usr/local/bin/npm /usr/local/share/man/man1/node* /usr/local/lib/dtrace/node.d ~/.npm ~/.node-gyp 

veya (yukarıdakiyle aynı) bozuldu ...

Düğümü + npm'yi tamamen kaldırmak için aşağıdakileri yapmak gerekir:

  1. / usr / local / lib adresine gidin ve herhangi bir düğümü ve düğüm_modüllerini silin
  2. / usr / local / dizinine gidin ve herhangi bir düğümü ve düğüm_modülleri dizinini silin
  3. demlemek kurulum düğümü ile yüklediyseniz , terminalinizde demlemek kaldırma düğümünü çalıştırın
  4. herhangi biri için Ana dizini kontrol yerel veya lib veya dahil klasörleri ve herhangi silmek düğümü veya node_modules oradan
  5. / usr / local / bin adresine gidin ve yürütülebilir tüm düğümleri silin

Ayrıca yapmanız gerekenler:

sudo rm -rf /opt/local/bin/node /opt/local/include/node /opt/local/lib/node_modules
sudo rm -rf /usr/local/bin/npm /usr/local/share/man/man1/node.1 /usr/local/lib/dtrace/node.d

Ayrıca, NVM $HOME/.bashrc, manuel olarak döndürülmesi gereken PATH değişkenini değiştirir .

Ardından nvm'yi indirin ve düğümü kurmak için talimatları izleyin. Düğümün en son sürümleri npm ile geliyor , sanırım, ama bunu da yeniden yükleyebilirsiniz.


82
Ben de mecburdum rm -rf /Users/[homedir]/.npm.
brokenindexfinger

17
Ayrıca kaldırmak için gerekli/Users/[homedir]/.nvm
n0pe

42
Ben de koştum brew doctorve sonra brew pruneNPM için bir demet kırık sembolik temizlemek için.
Chris Jacob

54
Savaş testi yaptığım bir senaryoyu bir araya getirdim. Teşekkürler @DominicTancredi bu harika çalışıyor! gist.github.com/brock/5b1b70590e1171c4ab54
brock

13
Ben de eklemek zorunda: sudo rm -rf ~/.node-gyp. Demlemeye geçmeden önce MacPorts ile ekledim.
JESii

519

Demleme kullanıcıları için OSX :

Ayırmak:

brew uninstall node; 
# or `brew uninstall --force node` which removes all versions
brew cleanup;
rm -f /usr/local/bin/npm /usr/local/lib/dtrace/node.d;
rm -rf ~/.npm;

Yüklemek:

brew install node;
which node # => /usr/local/bin/node
export NODE_PATH='/usr/local/lib/node_modules' # <--- add this ~/.bashrc

brew info nodeDüğüm yüklemelerinizle ilgili daha fazla ayrıntı için çalıştırabilirsiniz .


demlemek yerine NVM kullanmayı düşünün

NVM (düğüm sürüm yöneticisi), düğümün birden çok sürümünü yönetmek için taşınabilir bir çözümdür

https://github.com/nvm-sh/nvm

> nvm uninstall v4.1.0
> nvm install v8.1.2
> nvm use v8.1.2
> nvm list
         v4.2.0
         v5.8.0
        v6.11.0
->       v8.1.2
         system

bunu farklı düğüm bağımlılıklarına sahip farklı projeler arasında geçiş yaparken sürümleri otomatik olarak değiştirmek için AVN ile kullanabilirsiniz .


2
Bu tür kurulumdan sonra düğüm ve npm kullanılabilir olacak şekilde env değişkenleri nasıl ayarlanır?
Maxim V. Pavlov

13
--forceDüğümün tüm sürümlerinin kaldırıldığından emin olmak için bayrakla $ brew uninstall --force node
demlemeniz gerekebilir

-bash: /usr/local/bin/npm: No such file or directoryşimdi ne yapabilirim?
ValRob

5
> "demlemek yerine NVM kullanmayı düşünün"; İronik olarak NVM'yi demleme ile kurabilirsiniz !; Harika bir ipucu, teşekkürler.
HankCa

2
NVM kullanmak yardımcı oldu.
coderpc

186

Bu yazının biraz tarihli olduğunu biliyorum, ancak sadece Node.js'yi kaldırırken Terminal'de benim için çalışan komutları paylaşmak istedim.

lsbom -f -l -s -pf /var/db/receipts/org.nodejs.pkg.bom | while read f; do  sudo rm /usr/local/${f}; done

sudo rm -rf /usr/local/lib/node /usr/local/lib/node_modules /var/db/receipts/org.nodejs.*

GÜNCELLEME: 23 SEP 2016


Bu komutları çalıştırmaktan korkuyorsanız ...

Sayesinde jguixiçin this quick tutorial.

İlk olarak, bir ara dosya oluşturun:

lsbom -f -l -s -pf /var/db/receipts/org.nodejs.node.pkg.bom >> ~/filelist.txt

Dosyanızı manuel olarak inceleyin ( Homeklasörünüzde bulunur)

 ~/filelist.txt

Ardından dosyaları silin:

cat ~/filelist.txt | while read f; do sudo rm /usr/local/${f}; done

sudo rm -rf /usr/local/lib/node /usr/local/lib/node_modules /var/db/receipts/org.nodejs.*

10.10.5 ve üstü için

Teşekkürler Lenar Hoyt

Gist Yorumu Kaynak: gistcomment-1572198

Orijinal Gist: TonyMtz/d75101d9bdf764c890ef

lsbom -f -l -s -pf /var/db/receipts/org.nodejs.node.pkg.bom | while read f; do sudo rm /usr/local/${f}; done

sudo rm -rf /usr/local/lib/node /usr/local/lib/node_modules /var/db/receipts/org.nodejs.*

15
Vay ... bu çok korkutucu. En azından ilk "rm" bir "rm -rf" değildir, eğer sbom'un çıkışında boş bir çizgi varsa, / usr / local komutunun tümünü kaldıracaktır. Bu kadar ağır bir şey yapmadan önce, sbom çıktısını ve tüm bu direktiflerin nereden geldiğini inceleyin ve ne kaldırdığınızı tam olarak bildiğinizden emin olun.
Don Hatch

16
Şunu da eklemeliyim ... Eğer sağlıklı bir kendini koruma içgüdünüz varsa, "sudo rm -rf /" ile başlayan bu ikinci komutu yazmanız veya kopyalamanız çok zor olmalıdır. Bir hapşırma ya da kedi klavyenize atlar ve dosya sisteminizi yok ettiniz.
Don Hatch

2
Bunun org.nodejs.node.pkg.bomyerine org.nodejs.pkg.bom.
Lenar Hoyt

1
@DonHatch, ilk harf olmadan satırı kopyalar, böylece başlamadan önce başlar udo..ve sonra başlar s.
17'de

1
Lsbom komutu, komut dosyasının benzediği yolları silmeye çalıştığı göreli yollar çıkarır /usr/local/./node/yada. ./Kesme filtresini kullandığım öneki kaldırmak için : lsbom -f -l -s -pf /var/db/receipts/org.nodejs.node.pkg.bom | cut -c 3- | while read f; do sudo rm /usr/local/${f}; done
timiscoding

142

Mavericks üzerinde pkg düğümünden (nodejs sitesinden) yüklüyorum ve demlemek kullanarak yeniden yükleyebilmem için kaldırıyorum. Terminalde sadece 4 komut çalıştırıyorum:

  1. sudo rm -rf /usr/local/lib/node_modules/npm/
  2. brew uninstall node
  3. brew doctor
  4. brew cleanup --prune-prefix

Hala bir düğüm kurulumu varsa, 2. adımı tekrarlayın. brew install node


50
1 tanesi çalıştı, ancak 2 tanesi başarısız oldu. "No böyle fıçı: usr / local / Cellar / node" alıyorum
PositiveGuy

Evet, Mavericks
Dicer

1
Denedim ama yine aynı hatayı alıyorum Hata: brew linkAdım başarıyla tamamlanmadı
Chandni

Teşekkürler, mükemmel
Medhi

1
Bilginize: Bu yazı itibariyle -->brew prune Error: Calling 'brew prune' is disabled! Use 'brew cleanup --prune-prefix' instead.
Mike

33
  1. İlk:

    lsbom -f -l -s -pf /var/db/receipts/org.nodejs.pkg.bom | while read f; do  sudo rm /usr/local/${f}; done
    
    sudo rm -rf /usr/local/lib/node /usr/local/lib/node_modules /var/db/receipts/org.nodejs.*
  2. Özetlemek gerekirse, düğümü + npm'yi tamamen kaldırmanın en iyi yolu (bulduğum) aşağıdakileri yapmaktır:

    /usr/local/libherhangi bir düğüme ve düğüm_modüllerine gidin ve silin

    cd /usr/local/lib
    
    sudo rm -rf node*
  3. /usr/local/includeherhangi bir düğüm ve düğüm_modülleri dizinine gidin ve silin

    cd /usr/local/include
    
    sudo rm -rf node*
  4. ile kurduysanız brew install node, brew uninstall nodeterminalinizde çalıştırın

    brew uninstall node
  5. Ana dizininizde "yerel" veya "lib" veya "içerme" klasörleri olup olmadığını kontrol edin ve "düğüm" veya "düğüm_modülleri" nü oradan silin

    / usr / local / bin adresine gidin ve yürütülebilir tüm düğümleri silin

    cd /usr/local/bin
    
    sudo rm -rf /usr/local/bin/npm
    
    ls -las
  6. Ek talimatları da uygulamanız gerekebilir:

    sudo rm -rf /usr/local/share/man/man1/node.1
    
    sudo rm -rf /usr/local/lib/dtrace/node.d
    
    sudo rm -rf ~/.npm

Kaynak: tonyMtz


7
Kaldırma işlemi node*ilerlemenin özellikle güvenli bir yolu değildir. Bu önekle başka ikili dosyalar olabilir.
Lenar Hoyt

2
Büyük, nihayet 3 gün sonra, her zaman ve sonra npm sorunları vardı, tamamen kaldırıldı ve benim mac demlemek kullanarak yeniden, bir cazibe gibi çalışır.
Amit Bravo

Ne zaman ateş ilk komut alma can't open /var/db/receipts/org.nodejs.pkg.bom: No such file or directory **** Can't open /var/db/receipts/org.nodejs.pkg.bom.Yardım
Ahtesham Shah

Mac 10.13.5'te bu adımları uyguladıktan sonra bile, npm ve düğümü görebiliyordum, sorun ne olabilir?
vikramvi

25

düğümü 0.10.36'ya düşür

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

düğümü kararlı v'ye yükselt

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

Sadece bunu yaptım ve garip bir şekilde, npm'yi 6.4.1'den 6.2.0'a düşürdü.
Capn Sparrow

22

Eski bir sürüme (4.4.5) sahip olduğumdan mı yoksa resmi yükleyiciyi kullandığımdan mı emin değilim, ancak diğer yanıtlarda başvurulan dosyaların çoğu sistemimde yoktu. Sadece aşağıdakileri kaldırmak zorunda kaldım:

~/.node-gyp
~/.node_repl_history
/usr/local/bin/node
/usr/local/bin/npm
/usr/local/include/node
/usr/local/lib/dtrace/node.d
/usr/local/lib/node_modules
/usr/local/share/doc/node
/usr/local/share/man/man1/node.1
/usr/local/share/systemtap/tapset/node.stp

Tutmaya karar verdim ~/.npmçünkü Node'yi Homebrew ile yeniden kurmayı planlıyordum.


Bu cevap 2012'de yapıldı, bu yüzden eminim miras var. Şimdi, eğer yeni cevaplar ortaya çıkarsa, etkili olup olmadıklarını inceledikten sonra onları onaylarım.
Dominic Tancredi

15

Mevcut cevapları özetledim ve Düğüm js'nin NPM ile birlikte TAMAMEN SİLİNDİĞİNİ sağladım .

  1. brew uninstall node
  2. which node
  3. sudo rm -rf /usr/local/bin/node
  4. sudo rm -rf /usr/local/lib/node_modules/npm/
  5. brew doctor
  6. brew cleanup --prune-prefix

Terminale kopyalanacak satırlar:

brew uninstall node;
which node;
sudo rm -rf /usr/local/bin/node;
sudo rm -rf /usr/local/lib/node_modules/npm/;
brew doctor;
brew cleanup --prune-prefix;

Bu adımları izledim ve işe yaramış gibi görünüyor. Hala gibi benim kök klasöründe dizinleri vardır .node-gyp/, .npm/, .npm-global/, ve .nvm/. Bunları silebilir miyim veya düğümü yeniden yüklemeyi planlıyorsam saklamam gerekir mi?
WaterTrash

10
  • Düğümü ve / veya düğüm_ modüllerini / usr / local / lib'den silin

          ex code:
          cd /usr/local/lib
          sudo rm -rf node
          sudo rm -rf node_modules
  • Düğümü ve / veya düğüm_ modüllerini / usr / local / include dizininden silin

  • / Usr / local / bin'den düğümü, düğüm hata ayıklamasını ve düğüm-gyp'ini sil
  • .Npmrc'yi ana dizininizden silin (bunlar npm ayarlarınızdır, Düğümü hemen yeniden yüklemeyi planlıyorsanız bunu silmeyin)
  • .Npm'yi ana dizininizden silin
  • .Node-gyp'i ana dizininizden silin
  • .Node_repl_history giriş dizininizden silin
  • Düğümü * / usr / local / share / man / man1 / dizininden silin
  • Npm * öğesini / usr / local / share / man / man1 / dizininden silin
  • Node.d dosyasını / usr / local / lib / dtrace / dizininden silin.
  • Düğümü / usr / local / opt / local / bin / dizininden sil
  • / Usr / local / opt / local / include / dizininden düğümü sil
  • Node_modules öğesini / usr / local / opt / local / lib / dizininden silin
  • Düğümü / usr / local / share / doc / dizininden sil
  • Node.stp dosyasını / usr / local / share / systemtap / tapset / dizininden silin

Ben de kaldırmak zorunda node@6den/usr/local/opt/
yankı


8

Sonra

brew uninstall node

Hangi düğümü bilmek zorundaydım

which node

o zaman onu kaldır

rm -rf /usr/local/bin/node

7

Nvm'yi daha önce kurduysanız , aşağıdaki komutları yürütün

  • nvm deactivate - Bu, /.nvm/*/bin $ PATH sitesinden kaldırılacak
  • nvm list - Sistemde yüklü düğümün tüm sürümlerini listelemek için
  • nvm uninstall <version> kaldırmak istediğiniz tüm sürümleri belirleyebilirsiniz.

Düğümü kullanarak yüklemek nvmve kaldırmak nvm yerine kaldırmak her zaman iyidirbrew .

Bu çözüm benim için çalıştı.

Ek Komutlar

  • which nodesisteminizde kurulu olan düğümün yolunu bilmek. Düğümü elle kaldırmak için bu dizini rm yapabilirsiniz. Daha sonra PATH dosyasını buna göre ayarlamanız gerekebilir.

6

Dominic Tancredi'nin harika cevabına genişleyerek , bunu bir bash paketine ve bağımsız bir senaryoya dönüştürdüm. Zaten bpkg adlı "Back Package Manager" kullanıyorsanız komut dosyasını çalıştırarak kurabilirsiniz:

bpkg install -g brock/node-reinstall

Ya da brock / node -install'da Github'daki senaryoya bakabilirsiniz . Komut dosyası, nvm veya nave kullanarak düğümü yeniden yüklemenize ve varsayılan olarak bir düğüm sürümü belirtmenize olanak tanır.


1
Bunu göndermek üzereydim ve yazarın soruna en iyi cevabı verdiğini görüyordum: düğüm yeniden kurmayı bir kez kullanın ve asla geriye bakmayacaksınız. Beni yere vuruyor ve daha fazla gelişime hazır hale getirdim! Şerefe şükran @brockangelo!
Wallace Sidhrée

3
Uyarı ..... node-reinstallSenaryo bu satırı içeriyor: sudo rm -rf $HOME/{local,lib,include,node*,npm,.npm*} Eğer bağımsız bir şekilde o isimde bir dizin varsa $HOME(benim gibi), o clobbered olacak!
terrycojones

6

Ana cevaba ek olarak, içinde bulunan tüm npm örneklerini kaldırmak için ihtiyacım vardı:

rm -rf /usr/local/share/man/man1/npm*

1
Bu yeni bir cevap değil, uygun cevap hakkında bir yorum olmalıdır.
Edward Anderson

5

Mac'imde Node.js kaldırılırken bir sorundan etkilendim. Gibi garip bir davranışım vardınpmHala tüm bu ile kaldırdıktan sonra bile onların .

Macport ile eski bir kurulum yaptım çünkü. Yani bağlantı noktasını kullanarak da kaldırmanız gerekir:

sudo port uninstall nodejs

Node.js'nin birçok farklı sürümünü yüklemiş olabilir, bu yüzden hepsini kaldırın (tek tek).


1
Bu tam olarak başıma geldi :-) Zeyil cevabınız için teşekkürler. Pek çok Cordova sürümüne sahip olmaya başladım ve bir npm bir Cordova'yı kaldıramadı.
peter_the_oak

5

belki yapmalısın

hash -r 

symlink sorununa yardımcı olur

$ node -v
$ bash: /opt/local/bin/node: No such file or directory


4

En iyi yol bir yükleyici paketi indirmektir: mac üzerinde .pkg. En son kararlı sürümü tercih edin.

Bağlantı: Node.js

Bu paket sonunda önceki sürümün üzerine yazacak ve ortam değişkenlerini buna göre ayarlayacaktır. Sadece birkaç tıklamayla yükleyiciyi çalıştırın ve bitti.


3

Git deposundan indirilen kaynaktan Node.js'yi yükledim. Şununla yükledim:

./configure
$ make
$ sudo make install

Make dosyası desteklediğinden, yapabilirim:

$ sudo make uninstall

Paralel nasıl çalıştırılır? 2 sürüm çalıştırmak istiyorum demek?

3

Homebrew üzerinden temizleme ve kurulum açıklayan cevapların bir arkadaşı olarak, homebrew'un kendisinin sembolik çatışmaların net göstergelerini sağladığını buldum.

Ne yazık ki, onlarla karşılaştıklarında bunları tek tek sağlar, bu yüzden biraz zahmetlidir, ancak tüm çatışmaları bulur ve homebrew ile temiz bir kurulum elde etmenin tek yoluydu.

Esasen süreç:

  1. düğümü kaldırmak için homebrew kullan
  2. temiz homebrew
  3. düğümü yüklemek için homebrew kullanın ve herhangi bir işaretli çakışma dosyasını not edin
  4. bayrak çakışma dosyasını (veya bir 'düğüm' dizini ise tüm dizini) silme
  5. temiz bir kurulum elde edene kadar 1. adıma geçin

şematik olarak:

İşte kurulumumun son adımlarından bir ekran çıktısı - temiz bir kurulumla sonuçlandığını görebilirsiniz (sonunda ...):

computer1:DevResources user1$ brew install node
Updating Homebrew...
==> Downloading https://homebrew.bintray.com/bottles/node-13.1.0.mojave.bottle.tar.gz
Already downloaded: /Users/user1/Library/Caches/Homebrew/downloads/da904f1fdab6f6b2243a810b685e67b29a642c6e945f086e0022323a37fe85f9--node-13.1.0.mojave.bottle.tar.gz
==> Pouring node-13.1.0.mojave.bottle.tar.gz
Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
Could not symlink share/systemtap/tapset/node.stp
Target /usr/local/share/systemtap/tapset/node.stp
already exists. You may want to remove it:
  rm '/usr/local/share/systemtap/tapset/node.stp'

To force the link and overwrite all conflicting files:
  brew link --overwrite node

To list all files that would be deleted:
  brew link --overwrite --dry-run node

Possible conflicting files are:
/usr/local/share/systemtap/tapset/node.stp
/usr/local/lib/dtrace/node.d
==> Caveats
Bash completion has been installed to:
  /usr/local/etc/bash_completion.d
==> Summary
🍺  /usr/local/Cellar/node/13.1.0: 4,591 files, 54.2MB
computer1:DevResources user1$ rm '/usr/local/share/systemtap/tapset/node.stp'
computer1:DevResources user1$ brew uninstall node
Uninstalling /usr/local/Cellar/node/13.1.0... (4,591 files, 54.2MB)
computer1:DevResources user1$ brew cleanup
computer1:DevResources user1$ brew install node
Updating Homebrew...
==> Downloading https://homebrew.bintray.com/bottles/node-13.1.0.mojave.bottle.tar.gz
Already downloaded: /Users/user1/Library/Caches/Homebrew/downloads/da904f1fdab6f6b2243a810b685e67b29a642c6e945f086e0022323a37fe85f9--node-13.1.0.mojave.bottle.tar.gz
==> Pouring node-13.1.0.mojave.bottle.tar.gz
Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
Could not symlink lib/dtrace/node.d
Target /usr/local/lib/dtrace/node.d
already exists. You may want to remove it:
  rm '/usr/local/lib/dtrace/node.d'

To force the link and overwrite all conflicting files:
  brew link --overwrite node

To list all files that would be deleted:
  brew link --overwrite --dry-run node

Possible conflicting files are:
/usr/local/lib/dtrace/node.d
==> Caveats
Bash completion has been installed to:
  /usr/local/etc/bash_completion.d
==> Summary
🍺  /usr/local/Cellar/node/13.1.0: 4,591 files, 54.2MB
computer1:DevResources user1$ rm '/usr/local/lib/dtrace/node.d'
computer1:DevResources user1$ 
computer1:DevResources user1$ brew uninstall node
Uninstalling /usr/local/Cellar/node/13.1.0... (4,591 files, 54.2MB)
computer1:DevResources user1$ brew cleanup
computer1:DevResources user1$ brew install node
Updating Homebrew...
==> Downloading https://homebrew.bintray.com/bottles/node-13.1.0.mojave.bottle.tar.gz
Already downloaded: /Users/user1/Library/Caches/Homebrew/downloads/da904f1fdab6f6b2243a810b685e67b29a642c6e945f086e0022323a37fe85f9--node-13.1.0.mojave.bottle.tar.gz
==> Pouring node-13.1.0.mojave.bottle.tar.gz
==> Caveats
Bash completion has been installed to:
  /usr/local/etc/bash_completion.d
==> Summary
🍺  /usr/local/Cellar/node/13.1.0: 4,591 files, 54.2MB
computer1:DevResources user1$ node -v
v13.1.0

2

Her şeyden önce, yeni düğüm sürümünü kurduktan sonra düğümü: (mac) devre dışı bırakmanız gerekir.

nvm deactivate

Bu, / PATERS/user_name/.nvm/*/bin $ PATH klasöründen kaldırıldı

Ve bu düğüm güncellendikten sonra

node --version
v10.9.0

1

Bu benim için düzeltildi Homebrew Kullanıcıları için Mac OS X'te npm sabitleme . Ve çok fazla adım gerektirmez.

Nedenini umursamıyorsanız sadece çözüm kısmına gidin.

Kolaylık sağlamak için ilgili bölüm:

Çözüm

Bu çözüm, çalıştırmaya çalışırken oluşan hatayı düzeltir npm update npm -g. İşiniz bittiğinde, aynı zamandasudo global olarak npm modüllerini kurmak .

Başlamadan önce, global olarak kurulmuş npm paketlerini not edin. Bu talimatlar, tüm bu paketleri kaldırmanızı sağlayacaktır. İşiniz bittikten sonra yeniden yüklemeniz gerekir.

Varolan tüm global npm modüllerini kaldırmak, düğümü & npm'yi kaldırmak, düğümü doğru varsayılanlarla yeniden yüklemek, yüklenecek global npm modüllerinin konumunu yapılandırmak ve ardından npm'yi kendi paketi olarak yüklemek için aşağıdaki komutları çalıştırın.

rm -rf /usr/local/lib/node_modules
brew uninstall node
brew install node --without-npm
echo prefix=~/.npm-packages >> ~/.npmrc
curl -L https://www.npmjs.com/install.sh | sh

Düğüm ve npm bu noktada doğru şekilde kurulmalıdır. Son adım eklemektir ~/.npm-packages/binsizin için PATHkullanılabilen bu yüzden npm ve küresel npm paketleri. Bunu yapmak için, aşağıdaki satırı ekleyin ~/.bash_profile:

export PATH="$HOME/.npm-packages/bin:$PATH"

Artık ihtiyacınız olan global npm paketlerini sorunsuz bir şekilde yeniden kurabilirsiniz.


4
Yığın Taşması'nda yalnızca bağlantı yanıtları önerilmez.
Andrew Grimm

@ AndrewGrimm mantıklı, ilgili kısmı kopyaladım.
18'de pcatre

1
Aşağıdaki komutu koyduktan sonra aşağıdaki hatayı alıyorum: curl -L npmjs.com/install.sh | sh .... npm ERR! Bu çalışmanın tam bir günlüğünü şu adreste bulabilirsiniz: npm ERR! /Users/bddev/.npm/_logs/2018-10-18T20_02_34_337Z-debug.log npm ERR! kodu E404 npm ERR! 404 Bulunamadı: 1.535s@latest npm ERR! Bu çalışmanın tam bir günlüğünü şu adreste bulabilirsiniz: npm ERR! /Users/bddev/.npm/_logs/2018-10-18T20_02_36_399Z-debug.log Başarısız
Shoaib Ahmed

1

Benim durumumda diğer cevapların hiçbiri işe yaramadı çünkü daha önce node8'e geçtim. Yukarıda yapmak yerine, aşağıdakiler benim için çalıştı:

which node

/usr/local/bin/node@8yerine geri döndü/usr/local/bin/node

bu yüzden bu komutu yürüttüm:

brew uninstall node@8

hangi çalıştı ve daha sonra resmi sitesinden en son pkg indirilen ve yüklü. Bundan sonra terminalimi kapatıp yeni sürüme erişmek için yeniden başladım


1

Düğümü bulamıyorsanız sadece çalıştırın whereis nodeve whereis npmve whereis nvmlistelenen dizinleri gerektiği gibi kaldırabilirsiniz.

Ayrıca, değişikliklerin geçerli olması için terminalinizi tamamen kapatmanız ve yeniden açmanız gerekir.


0

@ lfender6445 yanıtı kaldırmam benim için iyi çalıştı

Şimdi yeniden yüklemek için, en kararlı olanın yerine son sürümü yüklerken sorun yaşadım, bu yüzden yapmanız gereken belirli bir düğüm sürümünü yüklemek için:

brew install node@10 // 10 is the version I want
brew link node@10

0

Docker - alternatif yaklaşım

Docker, düğüm gibi araçları çalıştırmak için kullanılabilen bir tür süper hızlı sanal makinedir (bunun yerine doğrudan mac-os'a yükleyin). Bunu yapmanın avantajları

  • tüm şeyler ('milyon' düğüm dosyaları) docker görüntüsünün / konteynerinin içine yüklenir (birkaç dahili docker dosyasında kapsüllenir)

  • mac dizininizi proje ile docker konteynerinize eşleyebilir ve düğüme erişebilirsiniz - ancak docker'ın dışında, mac-os sistemi düğümün kurulu olduğunu bile bilmiyor. Böylece, gerçek dosyalarda çalışabilen kullanılabilir düğüm komutlarına sahip bir çeşit 'sanal' konsol elde edersiniz

  • düğümü bulup kolayca öldürebilir docker psvedocker rm -f name_or_num

  • docker görüntüsünü / kapsayıcılarını tek bir komutla kolayca kaldırabilir docker rmi ...ve boş alan elde edebilirsiniz ve komut dosyası çalıştırarak tekrar yükleyebilirsiniz (aşağıda)

  • düğümünüz docker'ın içine yerleştirilmiştir ve tüm sisteme erişimi yoktur - yalnızca onunla eşlediğiniz klasörlere

  • düğüm hizmetlerini çalıştırabilir ve bağlantı noktalarını mac bağlantı noktasına kolayca eşleyebilir ve web tarayıcısından erişebilirsiniz

  • aynı anda birçok düğüm sürümünü çalıştırabilirsiniz

  • benzer şekilde (aynı anda birçok sürümde) gibi diğer araçları da kurabilirsiniz: php, veritabanları, redis vb. - mac-os ile herhangi bir etkileşim olmadan docker'ın içinde (bu yazılımı hiç farketmez). Örneğin, aynı anda farklı sürümleri ile 3 mysql db ve farklı php sürümü ile 3 php uygulaması çalıştırabilirsiniz ... - böylece birçok araç ama temiz sistem olabilir

  • TAKIM ÇALIŞMASI: bu çevre kolayca diğer makinelere (ve hatta bazı değişiklikler ile windows / linux sistemlerine) klonlanabilir ve aynı docker düzeyinde ortam sağlayabilir - böylece komut dosyalarınızı / docker dosyalarınızı ve kurulum ortamınızı kolayca kurabilir ve yeniden kullanabilirsiniz. yeni ekip üyesini çok hızlı bir şekilde (sadece docker yüklemesi ve benzer klasör yapısı oluşturması ve komut dosyalarının kopyasını alması gerekiyor - hepsi bu). Bu şekilde 2 yıl ve ekibimle çalışıyorum - ve çok mutluyuz

Talimat

  • Docker'ı örneğin bu talimatları kullanarak kurun

  • İş için 'özel' dizini hazırlayın, örneğin /Users/kamil/workdizinim (Bu dizini daha fazla kullanacağım - ancak isteğe bağlı olabilir) - bu dizin, docker kapları ve mac dosya sapınız arasında 'arabirim' olacaktır. Bu direk içinde aşağıdaki dir yapısını oluşturun:

    /Users/kamil/work/code - burada projelerinizi kodla koydunuz

    /Users/kamil/work/tools

    /Users/kamil/work/tools/docker-data - burada günlükler (veya birisi db kullanmıyorsa veritabanı dosyaları) gibi kapsayıcı çıktı verilerini eşleştiriyoruz

    /Users/kamil/work/tools/docker

    /Users/kamil/work/tools/docker/node-cmd - burada docker düğümü komut dosyalarını koyduk

  • içeride diğer komut dosyalarında kullanılan global yolları tek bir yerde içerecek toolsdosya oluştur.env

  • Innside dir aşağıdaki içeriğe sahip ../node-cmddosya oluşturdockerfile

  • Innside dir aşağıdaki içeriğe sahip ../node-cmddosya oluştur run-container(bu dosya çalıştırılabilir olmalıdır chmod +x run-container) - (portları ve dizinleri harici 'dünya' formunu dahili docker dosya sistemine nasıl eşlediğimize dikkat edin)

  • tamam şimdi biraz proje work/code/myProjectekleyebilir ve 'run-cmd' dosyasını izleyerek ekleyebilirsiniz (çalıştırılabilir olmalıdır)

  • komut dosyasının üzerinde çalıştırırsanız (çift tıklatarak), proje dizininde kullanılabilir düğüm komutlarına sahip bir konsol görürsünüz. npm install

  • projeyi arka planda çalıştırmak için (örn. bazı serwice), örneğin web-server angular-cli uygulamasını çalıştırmak, aşağıdaki komut dosyasını kullanabilirsiniz ( run-front-must yürütülebilir olmalıdır) - (ayrıca /etc/hostsuygun etki alanı eklemek için dosyayı düzenlemeniz gerekir )


-7

(sunucu: ubuntu 14)

1.) nvm (düğüm sürüm yöneticisi) yükleyin https://github.com/creationix/nvm

2.) nvm yükleme düğümü

3.) npm -v (npm sürümünü sorgula => 3.8.6)

4.) düğüm -v (düğüm sürümünü sorgula => v6.0.0)

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.