Saya mencoba menjalankan versi NodeJS lain dengan nvm
tetapi mendapatkan kesalahan ini:
$ nvm use v4.2.4
nvm is not compatible with the npm config "prefix" option:
currently set to "/Users/z/.npm-global"
Run `npm config delete prefix` or `nvm use --delete-prefix v4.2.4` to unset it.
Saya memiliki awalan yang sengaja saya hindari sudo npm
(lihat https://docs.npmjs.com/getting-started/fixing-npm-permissions ).
Apakah ada cara yang bisa saya gunakan nvm
tanpa kehilangan awalan untuk paket yang diinstal secara global?
Jawaban:
Hapus dan Reset awalan
Catatan: Ubah nomor versi dengan yang ditunjukkan dalam pesan kesalahan.
Kredit ke @gabfiocchi di Github - "Anda harus menimpa awalan nvm"
sumber
npm config set prefix $NVM_DIR/versions/node/<node-version-directory>
Saya memiliki masalah yang sama dan pelaksanaan
npm config delete prefix
tidak membantu saya.Tapi ini berhasil:
Setelah menginstal nvm menggunakan minuman, buat
~/.nvm
direktori:$ mkdir ~/.nvm
dan tambahkan baris berikut ke
~/.bash_profile
:(Pastikan Anda tidak memiliki perintah terkait nvm lainnya di
~/.bashrc
atau~/.profile
atau~/.bash_profile
)Buka terminal baru dan kali ini tidak boleh mencetak pesan peringatan.
Periksa apakah nvm berfungsi dengan menjalankan
nvm --version
perintah.Setelah itu, instal / instal ulang NodeJS menggunakan
nvm install node && nvm alias default node
.Info lebih lanjut
Saya menginstal
nvm
menggunakanhomebrew
dan setelah itu saya mendapat notifikasi ini:Mengabaikannya membawa saya ke pesan kesalahan ini:
Saya mengikuti panduan sebelumnya (dari
homebrew/nvm
) dan setelah itu saya menemukan bahwa saya perlu menginstal ulang NodeJS. Jadi saya melakukannya:dan itu diperbaiki.
Pembaruan: Menggunakan brew untuk menginstal NVM menyebabkan lambatnya permulaan Terminal. Anda dapat mengikuti instruksi ini untuk menyelesaikannya.
sumber
nvm alias default node
tampaknya membantu saya dalam kasus sayanvm
tidak didukung ketika diinstal melalui minuman. Copot pemasangannya dan gunakan metode yang tepat, skrip ikal di readme.nvm
. Jawaban ini tidak berhasil untuk saya.rm -rf node_modules
dan larinpm install
lagi, karena direktori sudah memiliki masalah izin edan.brew remove node -f
, yang menghapus semua versi yang diinstal. Lakukan ini dulu, kemudian ikuti panduan di tautan saya di atas, lalu hapus node_modules. Anda harus mendapatkan instalasi yang bersih! Saya pikir Anda kemudian harus menginstal npm juga, yang saya ikuti petunjuk dari artikel nodejs.org yang muncul ketika saya mencarinya.npm install npm@latest -g
adalah perintah, setelah Anda menginstal node.Ini mungkin konflik dengan instalasi Node lokal Anda (jika Anda menginstalnya dengan cara lain selain NVM di masa lalu). Anda harus menghapus instance node ini:
sudo rm -rf /usr/local/lib/node_modules
sudo rm /usr/local/bin/node
cd /usr/local/bin && ls -l | grep "../lib/node_modules/" | awk '{print $9}'| xargs rm
Setelah Anda tidak dapat menginstal nvm
sumber
Kesalahan ini dapat terjadi ketika jalur folder instalasi NVM Anda memiliki Tautan Simbolik .
Penjelasan
Jalur instalasi default NVM adalah:
$HOME/.nvm
tetapi folder rumah Anda bisa menjadi tautan simbolis untuk drive lain, seperti kasus saya.Contoh, folder rumah saya adalah Tautan Simbol ke drive lain:
/home/myuser -> /bigdrive/myuser
Ini menyebabkan masalah awalan.
Larutan
Pada skrip startup Anda (.bashrc atau .zshrc atau lainnya), ubah folder NVM ke jalur langsung.
Ex:
NVM_DIR="/bigdrive/myuser/.nvm"
..bashrc
sumber
Saya berlari ke ini saat menggunakan node diinstal melalui
nvm
, dengannvm
diinstal melalui homebrew. Saya menyelesaikannya dengan menjalankanbrew uninstall nvm
,,rm -rf $NVM_DIR
kemudian menginstal ulang nvm menggunakan skrip instalasi resmi dan menginstal ulang versi node yang saya butuhkan.Catatan: Saya juga telah
$NVM_DIR
memasang dan symlink. Saya memindahkannya kembali ke homedir saya.sumber
Mungkin masalahnya jika Anda memiliki direktori home Anda terpasang di suatu tempat, karena nvm tidak berfungsi dengan baik dengan symlink. Karena saya tidak peduli di mana letak $ NVM_DIR saya, saya menjalankan ini dan semua berfungsi dengan baik:
sumber
Saya memiliki masalah yang sama dan itu sangat mengganggu setiap kali dengan terminal. Saya menjalankan perintah ke terminal dan sudah diperbaiki
Bagi mereka mencoba untuk menghapus nvm dari minuman
mungkin tidak cukup hanya dengan membongkar instalan nvm
jika Anda melihat awalan npm masih / usr / lokal, jalankan perintah ini
sumber
Saya memiliki pesan kesalahan yang sama tetapi solusi lain. Jalur autogenerated selama curl (install.sh) tidak cocok. Periksa ini dengan:
Dalam kasus saya:
/var/www//.nvm
. Perlihatkan di file bash yang dibuat secara otomatis dan ubah dan ganti:: ~ / .bash_profile, ~ / .zshrc, ~ / .profile, atau ~ / .bashrc)menggantikan
dengan (misalnya)
sumber
Saya mengikuti https://stackoverflow.com/a/47861348/2391795 jawaban tetapi tidak berhasil dengan baik.
Setelah menjalankan perintah yang disarankan nvm saya tidak berfungsi lagi, menjalankan
nvm use
akan menampilkan versi node yang tepat digunakan, tetapi menjalankannode -v
akan menunjukkan yang lain. Tidak mungkin mengubah versi node lagi.Saya mencopot dan menginstal ulang nvm sepenuhnya untuk memperbaikinya. Saya mengikuti https://github.com/creationix/nvm#manual-uninstall dengan menjalankan
Kemudian diedit saya
.zshrc
untuk menghapus baris yang berkaitan dengan nvm, yang dalam kasus saya adalahKemudian mulai shell baru (sehingga nvm tidak dimuat di shell baru ini) dan berlari https://github.com/creationix/nvm#install-script
Yang menambahkan nvm baris saya sebelumnya telah dihapus di blog saya
.zshrc
.Kemudian saya bisa menggunakan nvm seperti dulu. Saya kira itu adalah kasus aneh jika ada yang tidak beres dan memaksa saya untuk menginstal ulang semuanya, sepertinya sebagian besar orang tidak mengalami hal ini karena masalah ini.
sumber
Biarkan saya menggambarkan situasi saya.
Pertama, periksa konfigurasi saat ini
Kemudian, saya menemukan konfigurasi kesalahan dalam output:
Jadi, saya menghapus
C:\\Program Files\\nodejs
di /mnt/c/Users/paul/.npmrc.sumber
Saya memecahkan masalah ini ketika ditunjukkan pada Terminal VSCode dan JetBrains, tetapi tidak di terminal asli menggunakan perintah berikut:
Ini akan memberi Anda jalan yang diselesaikan di akhir:
Dari sana, menghapus file dan meluncurkan kembali VS Code akan memperbaiki masalah:
perbaiki tautan: https://github.com/nvm-sh/nvm/issues/1690#issuecomment-392014774
sumber
Saya sedang mencari solusi untuk masalah awalan nvm yang menemukan pertanyaan ini (sebelum menemukan solusi). Inilah "dialog" shell saya. Semoga bermanfaat bagi seseorang. Saya dapat menetapkan awalan dengan bantuan pos ini: https://github.com/npm/npm/issues/6592
Ketika saya mencoba
npm config delete prefix
ataunvm use --delete-prefix
sebelum menggunakannpm --prefix="" set prefix ""
, saya hanya mendapat: npm ERR! bukan kode 0Perhatikan bahwa Anda harus mengulangi prosedur yang sama dengan setiap versi node, awalan diatur kembali ke (dalam kasus saya) / usr / local setelah instalasi.
sumber
Saya mengalami masalah ini setelah memindahkan folder rumah saya ke drive baru di linux. Itu diperbaiki dengan menghapus folder .nvm dan menginstal ulang nvm
sumber
Baru saja menyelesaikan masalah. Saya terhubung
$HOME/.nvm
ke$DEV_ZONE/env/node/nvm
direktori. Saya menghadapi masalah yang sama. Aku digantiNVM_DIR
di$HOME/.zshrc
sebagai berikutBTW, silakan instal NVM menggunakan
curl
atauwget
perintah tidak dengan menggunakanbrew
. Untuk lebih lanjut silakan periksa komentar dalam edisi ini di Github: 855 # issuecomment-146115434sumber
nvm
dengannpm
?Saya hanya punya ide. Gunakan tautan simbolis untuk menyelesaikan kesalahan dan Anda masih dapat menggunakan awalan untuk paket yang diinstal secara global.
ln -s [your prefix path] [path in the '~/.nvm']
maka Anda akan memiliki folder simbolis di~/.nvm
folder tersebut, tetapi pada kenyataannya, paket global Anda masih diinstal di [jalur awalan Anda]. Maka kesalahan tidak akan muncul lagi dan Anda dapat menggunakannya secaranvm use **
normal. ps: ini berhasil untuk sayamac
. pps: jangan lupa untuk mengatur$PATH
kebin
folder npm Anda untuk menggunakan paket yang diinstal secara global.sumber
Catatan:
untuk menghapus, menghapus, atau menghapus instalan nvm - cukup hapus
$NVM_DIR
folder (biasanya~/.nvm
)yang dapat Anda coba:
rm -rf ~/.nvm
sumber