Nvm-windows: NPM tidak diinstal dengan node

Dibuat pada 15 Agu 2016  ·  66Komentar  ·  Sumber: coreybutler/nvm-windows

Lingkungan saya

  • [ ] Windows 7 atau lebih rendah (tidak benar-benar didukung karena EOL - lihat wiki untuk detailnya)
  • [ ] Windows 8
  • [ ] Windows 8.1
  • [x] Windows 10
  • [ ] Windows 10 IoT Inti
  • [ ] Windows Server 2012
  • [ ] Windows Server 2012 R2
  • [ ] Windows Server 2016
  • [ ] Instalasi Windows saya bukan bahasa Inggris.

    Aku sudah...

  • [x] baca README untuk mengetahui masalah npm gotcha & antivirus.

  • [x] meninjau wiki untuk memastikan masalah saya belum teratasi.
  • [x] terverifikasi Saya menggunakan akun dengan hak administratif.
  • [x] mencari masalah (terbuka dan tertutup) untuk memastikan ini bukan duplikat.
  • [x] memastikan ini bukan pertanyaan tentang cara menggunakan NVM untuk Windows, karena gitter digunakan untuk pertanyaan dan komentar.

    Masalah saya terkait dengan (centang hanya yang berlaku):

  • [ ] pengaturan.txt

  • [ ] dukungan proxy
  • [ ] Dukungan 32 atau 64 bit

    Perilaku yang Diharapkan

Setelah menginstal nvm-windows menggunakan installer dan kemudian menginstal versi node menggunakan >nvm install latest atau >npm install 4.4.7 . Saya berharap dapat mengetik >npm help ke dalam baris perintah untuk memverifikasi npm berfungsi (dan tentu saja menggunakannya untuk menginstal paket).

Perilaku Sebenarnya

Sementara nvm mengatakan bahwa npm telah diinstal, folder yang berisi node_modules kosong:
...\AppData\Roaming\nvm\v4.4.7\node_modules (kosong)
C:\Program Files\nodejs\node_modules (kosong)

Langkah-langkah untuk mereproduksi masalah:

Pertama saya menginstal nvm 1.1.1 dari sini: https://github.com/coreybutler/nvm-windows/releases

Saya menginstal node versi 4.4.7 menggunakan nvm install 4.4.7 . Semua perintah nvm berfungsi dengan benar termasuk nvm use dan saya dapat menjalankan skrip hello world di node.js.

Selama instalasi, saya mendapatkan output baris perintah berikut:

>nvm install 4.4.7
Downloading node.js version 4.4.7 (64-bit)... Complete
Creating C:\Users\myusernamewithoutspaces\AppData\Roaming\nvm\temp

Downloading npm version 2.15.8... Complete
Installing npm v2.15.8...

Installation complete. If you want to use this version, type

nvm use 4.4.7

Ketika saya kemudian mengetik npm help ke dalam baris perintah saya mendapatkan kesalahan ini:

module.js:327
    throw err;
    ^

Error: Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js'
    at Function.Module._resolveFilename (module.js:325:15)
    at Function.Module._load (module.js:276:25)
    at Function.Module.runMain (module.js:441:10)
    at startup (node.js:139:18)
    at node.js:968:3
 module.js:327
    throw err;
    ^

Error: Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js'
    at Function.Module._resolveFilename (module.js:325:15)
    at Function.Module._load (module.js:276:25)
    at Function.Module.runMain (module.js:441:10)
    at startup (node.js:139:18)
    at node.js:968:3

Terima kasih atas bantuannya!

Komentar yang paling membantu

Punya masalah yang sama. Apa yang memperbaikinya untuk saya: menghapus "C:\Users\{your_username}\AppData\Roaming\npm" dari variabel PATH saya. Saya pikir itu adalah sisa dari instalasi simpul sebelumnya.

Semua 66 komentar

MEMPERBARUI
Dalam meninjau posting asli, saya perhatikan blok ini:

>nvm install 4.4.7
Downloading node.js version 4.4.7 (64-bit)... Complete
Creating C:\Users\myusernamewithoutspaces\AppData\Roaming\nvm\temp

Downloading npm version 2.15.8... Complete
Installing npm v2.15.8...

Installation complete. If you want to use this version, type

nvm use 4.4.7

Perhatikan bahwa nvm use 4.4.7 adalah bagian dari _instructions_ yang dihasilkan NVM4W setelah instalasi Node baru selesai. Jika Anda _tidak benar-benar menjalankan_ nvm use x.x.x , maka simpul tidak dikenali, dan karenanya npm tidak dikenali. Pastikan Anda menjalankan nvm use x.x.x (di mana xxx adalah versi yang ingin Anda jalankan) sebelum mencoba menjalankan perintah npm!

Tanggapan Asli
Apakah Anda berada di belakang proxy? Masalah ini telah muncul untuk beberapa pengguna sebelumnya ... kebanyakan mereka yang menggunakan proxy.

Saya akan memeriksa untuk memastikan C:\Program Files\nodejs\node_modules\npm\bin ada saat menggunakan versi tertentu.

Mungkin ada baiknya mencoba mencopot/menginstal ulang versi yang Anda inginkan. Pada akhirnya, NVM4W hanya menyerahkan kontrol ke node/npm setelah file diunduh/diekstraksi. Tantangannya adalah, terkadang unduhan dapat menunjukkan positif palsu (yaitu tidak menyelesaikan unduhan npm tetapi mengatakan itu). Saya menduga ini mungkin yang terjadi pada Anda.

Terima kasih @coreybutler. Saya tidak berada di belakang proxy, tetapi ada firewall dasar. Saya mencoba instalasi baru NVM4W dan nvm install 4.4.7 dengan firewall dimatikan. Hasilnya sama - baik \AppData node_modules benar-benar kosong dan folder \nodejsnode_modules kosong.

Ada ide lain? Saya juga akan memeriksa node install docs tentang masalah dengan menginstal npm jika menyerahkan kontrol

Saya rasa Anda tidak perlu menginstal NVM4W dengan firewall mati (karena merespons)... tetapi Anda mungkin ingin menguji menjalankan nvm install x.x.x dengan firewall mati. Saya masih curiga unduhan npm mungkin tidak selesai 100%.

ya, saya melakukan instalasi dengan firewall mati dan itu tidak membantu. Saya tidak yakin bagaimana menguji apa lagi yang mungkin salah dengan unduhan atau sebaliknya. Jika Anda memiliki ide lain, beri tahu saya!

Saya mengalami masalah yang sama saat menggunakan nvm 1.1.1 dan windows 10. Apakah ada informasi yang Anda perlukan untuk membantu debug. Yang satu ini benar-benar aneh bagiku. Ini akan bekerja untuk sementara waktu kemudian akhirnya berhenti bekerja dan tidak dapat lagi menemukan npm.

@NealHumphrey jika Anda menghapus instalan versi yang Anda gunakan kemudian hapus folder instal untuk versi itu di root nvm Anda, lalu instal ulang, ini biasanya berfungsi selama beberapa minggu untuk saya kemudian akan berhenti bekerja lagi dengan kesalahan yang sama yang Anda laporkan.

@LeeGDavis - Saya belum pernah bisa membuatnya berfungsi, bahkan menginstal ulang versi Node atau menginstal ulang NVM4W dan kemudian Node.js.

Untuk debugging - ketika Anda bisa membuatnya berfungsi, apa isi dari dua folder ini?
...\AppData\Roaming\nvm\v4.4.7\node_modules
C:\Program Files\nodejs\node_modules

Dan lain kali itu berhenti bekerja untuk Anda, dapatkah Anda memeriksa lagi apa isinya?

@LeeGDavis - Jika berhenti bekerja setelah jangka waktu tertentu, pasti ada sesuatu yang terjadi di lingkungan Anda. NVM4W tidak pernah menyentuh apa pun, kecuali jika Anda menjalankan perintah nvm . Di suatu tempat, sesuatu sedang dimodifikasi. Ini akan membantu untuk mengetahui lebih banyak tentang lingkungan. Misalnya, apakah Anda berada di domain Active Directory? Apakah Anda memiliki tugas terjadwal? Apakah Anda sudah menginstal antivirus, dan jika ya, yang mana?

@NealHumphrey - Hanya untuk memperjelas, Anda menjalankan nvm install untuk menginstal node dengan firewall mati, sebagai lawan menjalankan seluruh instalasi nvm (GUI) dengan firewall mati? Jika Anda ingin memeriksa unduhan, Anda dapat membandingkan checksum versi (tersedia di nodejs.org).

Memiliki masalah yang sama. Mematikan firewall McAfee saya dan penginstalan tampaknya berhasil kali ini: folder \node_modules\nvm ada di sana.

Menguji instalasi dengan beralih ke versi Node saya yang baru diinstal (6.2.2) dan menjalankan perintah npm --version dan mengembalikan 3.9.5

UPDATE: harus uninstall karena alasan. Ketika saya menginstal ulang (firewall masih mati), masalah muncul kembali: folder \node_modules\nvm\ hilang. Saya mencoba menggunakan terminal GIT BASH dan command prompt dalam mode administrator untuk menginstal Node, tetapi selalu hasil yang sama.

PEMBARUAN 2: Matikan firewall dan pemindai virus dan berfungsi kembali, menggunakan prompt perintah dalam mode administrator.

@NealHumphrey dan @coreybutler Masalahnya terjadi lagi dalam waktu kurang dari seminggu, jadi saya beralih ke vanilla node, tetapi akan beralih kembali ke nvm akhir minggu ini untuk membantu debug.

Saya tidak menggunakan pengaturan direktori yang dikontrol/aktif domain dan tidak ada tugas terjadwal. Sehubungan dengan pemasangan, nvm tidak pernah melaporkan kegagalan, tetapi menghapus folder pemasangan di root nvm diperlukan untuk membuatnya berfungsi kembali setelah yang dapat dieksekusi dikeluarkan dari jalur atau apa pun yang terjadi ...

Punya masalah yang sama persis ini. Menghapus MVN, mematikan perlindungan dan firewall waktu nyata Mcafee, menginstalnya kembali, dan kesalahannya hilang.

Pasti masalah antivirus. Namun; sepertinya itu mungkin sesuatu yang bisa dimodifikasi di pengaturan. Saya memverifikasi pagi ini bahwa NVM4W masuk daftar putih oleh Mcafee.

Kotak windows yang saya gunakan adalah instalasi vanilla windows 10 pro. Tidak ada antivirus atau firewall pihak ketiga yang diinstal, selain bek dan firewall default Windows, saya kira. Apa yang aneh bagi saya, versi tertentu (node ​​yang diinstal melalui nvm4w) akan berfungsi untuk sementara waktu sebelum tampaknya berhenti bekerja dan satu-satunya cara untuk memulihkannya adalah seperti yang saya jelaskan di atas.

@LeeGDavis Windows Defender dapat menghapus file juga. Namun; NVM4W juga masuk daftar putih di sana. Saya sarankan untuk meninjau %PATH% saat ini terjadi lagi. Saya mulai curiga bahwa dalam kasus Anda, mungkin AV sedang memodifikasi jalurnya. Dengan kata lain, semuanya mungkin benar, tetapi Windows tidak dapat menemukannya. Jika ini terus terjadi, buka edisi baru agar kami dapat melacaknya.

Adapun untuk tidak menginstal npm, saya masih berpikir itu hanya firewall/antivirus yang memblokir unduhan npm dari situs distribusi node. Jika solusi @frankorama berhasil, ini masalahnya dan tidak banyak yang dapat dilakukan dalam NVM4W untuk mencegahnya. Saya dapat mencoba menambahkan pengecualian ke firewall di penginstal di beberapa titik, tetapi itu tidak berarti mereka tidak akan ditimpa oleh perangkat lunak pihak ke-3.

@coreybutler @LeeGDavis Windows Defender adalah pelakunya bagi saya

Saya memiliki masalah ini. (windows 7x64, nvm v1.1.1)
Setelah beberapa menggali sekitar, saya menemukan, bahwa sepertinya masalahnya ada di os.Rename(tempDir+"\\nvm-npm\\npm-"+npmv,env.root+"\\v"+version+"\\node_modules\\npm") , karena semua langkah sebelumnya dilakukan dengan benar.
Saya dapat mengusulkan, bahwa ketika perintah ini dijalankan dir masih sibuk karena perintah rename sebelumnya.
Mungkin menyusun ulang perintah menjadi sesuatu seperti

os.Rename(tempDir+"\\nvm-npm\\npm-"+npmv,env.root+"\\v"+version+"\\node_modules\\npm")
os.Rename(env.root+"\\v"+version+"\\node_modules\\npm\\bin\\npm",env.root+"\\v"+version+"\\npm")
os.Rename(env.root+"\\v"+version+"\\node_modules\\npm\\bin\\npm.cmd",env.root+"\\v"+version+"\\npm.cmd")

atau menangkap kesalahan dan coba lagi (setelah 1 detik tidur)

UPD
Saya mengetik hasil terakhir dari mengganti nama ang got
"ganti nama .... Akses ditolak."

@se-m Terima kasih atas wawasannya. Urutannya penting, tetapi sepertinya ada masalah sinkronisitas.... setidaknya di lingkungan Anda. Versi Go mana yang Anda gunakan untuk menjalankan pengujian?

Jika perpindahan file memang menjadi masalah, saya tidak suka menggunakan sleeper karena tidak terlalu menyelesaikan masalah. os.Rename _harus_ pindahkan saja file-filenya, tetapi tampaknya itu tidak dapat diandalkan.

@coreybutler saya menggunakan go1.7 untuk pengujian saya (cetak saja kesalahannya)
Saya tidak melihat perbedaan antara "pertama pindahkan file dari folder dan kemudian folder" dan "pertama pindahkan folder dan kemudian pindahkan file dari itu" (jalur diperbaiki dalam contoh).

Jika Anda tidak akan menggunakan sleeper atau menyusun ulang, saya hanya dapat menyarankan menggunakan perintah "salin" alih-alih "pindah".

Untuk semua.
Periksa apakah Anda memilikinya "masalah sinkronisitas" (setelah nvm install xxx):

  1. Ada 2 file "npm.cmd" dan "npm" di folder node yang baru diinstal (vx.xx)
  2. Tidak ada folder "npm" di dalam node_modules (vx.xx/node_modules)

@se-m Ya, rencananya akan menggunakan salinan. Dengan cara ini checksum dapat dicocokkan dengan unduhan, lalu lagi setelah salinan selesai. Logging dapat diterapkan pada kedua langkah, memeriksa integritas file dan izin.

Daripada menggunakan sleeper atau salinan tambahan, saya hanya akan menangkap pengecualian yang diketahui dan mencoba lagi, dengan cara ini Anda tidak akan memiliki kondisi balapan dan Anda dapat mencoba lagi X kali sebelum menyerah untuk mengatasi disk "berputar karat" yang lambat atau disk kasus seseorang menginstal ke profil roaming yang disinkronkan jaringan.

Saya tahu ini agak lama, tetapi dapat mengonfirmasi bahwa menonaktifkan McAfee saat menginstal berhasil.

Saya juga harus menonaktifkan 360 TS agar berfungsi, terima kasih

Punya masalah yang sama. Apa yang memperbaikinya untuk saya: menghapus "C:\Users\{your_username}\AppData\Roaming\npm" dari variabel PATH saya. Saya pikir itu adalah sisa dari instalasi simpul sebelumnya.

Saya memiliki masalah yang sama @office di mana kami memiliki mcAfee enterprise, ketika berfungsi dengan baik di pc rumah saya.
Saya memecahkan cara ini (ini yang lebih cepat), saya mengunduh paket NPM dan saya menyalin konten ke folder node_modules/npm. Ini bekerja dengan baik.

@yuxblank Saya berada di kapal yang sama dengan Anda - McAfee Enterprise di kantor. Menonaktifkannya bukanlah pilihan. Solusi Anda membantu saya.

@yuxblank @manolkalinov

Saya sudah mencoba metode yang disarankan dan sementara itu membuat npm berfungsi, pemasangan global masih tidak berfungsi untuk saya - dengan perilaku yang sama seperti npm, node_modules hanya kosong selain dari yang saya salin secara manual.

Apakah ini sama untuk kalian juga?

Saya baru saja menginstal Windows 10 Pro tanpa npm atau node yang diinstal sebelumnya dan saat ini saya menginstal node melalui nvm install latest tetapi tidak ada npm

Masalah yang sama Windows 10 pro saat menginstal 8.9.1. Punya simpul, tetapi nvm\v8.9.1node_modules kosong seperti halnya c:\program files\nodejsnode_modules. Komputer kerja memiliki McAffee yang tidak dapat dinonaktifkan. Saya akan mengunduh npm dan menginstal secara manual.

+1
sebelum menginstal versi node baru (9.5.0)
setelah menginstal nvm dan mencoba beralih ke versi 6.10.0 dan beralih tetapi jika
Saya menjalankan npm start lalu saya melihat:

module.js:471
    throw err;
    ^

Error: Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js'
    at Function.Module._resolveFilename (module.js:469:15)
    at Function.Module._load (module.js:417:25)
    at Module.runMain (module.js:604:10)
    at run (bootstrap_node.js:394:7)
    at startup (bootstrap_node.js:149:9)
    at bootstrap_node.js:509:3
module.js:471
    throw err;
    ^

Error: Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js'
    at Function.Module._resolveFilename (module.js:469:15)
    at Function.Module._load (module.js:417:25)
    at Module.runMain (module.js:604:10)
    at run (bootstrap_node.js:394:7)
    at startup (bootstrap_node.js:149:9)
    at bootstrap_node.js:509:3

Jika saya beralih kembali ke versi simpul 9.5.0 yang diinstal (diinstal tidak menggunakan nvm) maka npm start berfungsi

Instalasi baru Windows 10, tanpa antivirus, tanpa npm ... :(

sama di sini, matikan Mcafee baik perlindungan waktu nyata maupun firewall, instal ulang dan npm sekarang tersedia.

matikan firewall McAfee dan perlindungan waktu nyata melakukan instalasi baru dan mendapat Kesalahan: Operasi ilegal EISDIR pada direktori, baca.
TYPE ERROR: Tidak dapat membaca properti 'mendapatkan' tidak terdefinisi di errorHandler (C:\Program Files\nodejsnode_modulesnpm\lib\utilserror-handler.js:205:18)

menggunakan windows 10
simpul versi 8.9.4

Antivirus Avira menyebabkan masalah ini di pc saya. Win10, setiap simpul dan npm

Saya menginstal ulang sistem operasi dari Windows 10 hingga 7 dan menggunakan NVM tanpa masalah 😁

Saya memiliki masalah yang sama, dan saya menemukan solusi yang mungkin secara kebetulan (tetapi tidak diverifikasi karena saya tidak ingin menghapus versi simpul baru saya lagi). Jadi di sini apa yang terjadi:

  • setelah nvm install berjalan, folder temp dibuat di AppData/Roaming/nvm/
  • ketika dibuat saya masuk ke folder temp -> nvm-npm -> npm-xyz dengan explorer (atau mungkin di nvm-npm saya tidak ingat dengan baik)
  • Saya pikir entah bagaimana dengan menjelajahi folder itu, itu agak menguncinya, dan mencegah Windows menghapusnya
  • Dan kemudian saya mengamati bahwa saat itu folder npm dipindahkan dengan benar ke nvm/vx.yy/node_modules, padahal sebelumnya selalu gagal.

Jadi menurut pengamatan ini, tebakan saya adalah, mungkin, selama instalasi, folder temp menghapus lebih cepat daripada perintah pindah dari temp ke folder node target, meninggalkan perintah pindah tanpa file untuk dipindahkan.

Saya mengalami masalah ini, tetapi dapat menyelesaikannya hanya dengan menjalankan kembali perintah nvm use.

versi terbaru nvm menyelesaikan masalah untuk saya.

Setelah banyak mencoba, hanya menonaktifkan "Perlindungan Akses" McAfee biarkan nvm akhirnya menginstal npm dengan benar!
Apa yang benar-benar mengganggu adalah McAfee tidak menunjukkan log apapun untuk itu: "Tidak ada ancaman" tuanku ... ya hanya mencegah beberapa file yang akan dibuat, saya akan mengatakan itu adalah sebuah acara !

Sayangnya bagi saya, tidak ada hal di atas yang berfungsi. McAfee dinonaktifkan, bek tidak aktif, tetapi saya masih mendapatkan masalah. Seperti yang dicatat AlainD, saya melihatnya mengunduh dan menampilkan dalam suhu ... tetapi jika saya mencoba melakukan apa yang dia sarankan, saya berakhir di folder kosong. Tidak ada yang disalin ke node_modules DAN folder tempat saya berada kosong - hanya jejak folder ke tempat saya berada.

Jadi ya, masalahnya pasti pindah/salin dari temp ke node_modules yang bermasalah.

Ya saya sudah mencoba menjalankan sebagai administrator cmd juga seperti biasa. Saya belum meletakkan git bash di kotak ini.

diselesaikan dengan menyalin folder npm (di bawah nodemodules) dari arsip Zip yang saya unduh secara manual dari nodejs.org. Tidak sempurna tetapi memecahkan masalah McAfee.

Saya juga memiliki masalah yang sama, tetapi instalasi npm saya agak tidak lengkap setelah beralih ke node 10.7.0 dan npm 6.1.0 - pertama-tama tidak memiliki paket uuid, kemudian paket semver di C:\ProgramDatanvm\v10.7.0node_modulesnpm. Saya tidak memiliki McAfee, meskipun saya memiliki antivirus COMODO.

Solusi saya hampir sama dengan YafimK - tetapi saya baru saja menyalin npm-v6.1.0.zip dari folder nvm\temp, dan kemudian secara manual membongkarnya ke C:\ProgramDatanvm\v10.7.0node_modulesnpm. Dilihat dari isinya, Anda cukup mengunduh folder yang sama dari https://github.com/npm/cli/releases tanpa mencampuri folder temp.

Semoga ini bisa membantu seseorang. Saya juga berharap nvmw menyelesaikan masalah ini.

Ini tampaknya menjadi masalah intermiten.

nvm uninstall 9.4
rm -r ~\AppData\Roaming\nvm\v9.4.0
nvm install 9.4
nvm use 9.4
Start-Sleep -Seconds 1
npm --version

Jika saya menjalankan skrip ini berulang kali dari PowerShell sebagai administrator, terkadang berhasil menginstal npm, dan terkadang gagal dengan kesalahan, Error: Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js' .

Jadi pada dasarnya, saya bisa membuatnya bekerja hanya dengan mencopot dan menginstal ulang sampai berfungsi secara acak.

npm mengubah repo mereka dari npm/npm menjadi npm/cli. Itu akan mempengaruhi setiap pemasangan Node 10.8.0+. Ini telah diperbaiki di 1.1.7.

@coreybutler Yah itu agak menyebalkan untuk sedikitnya :/

Terima kasih untuk memperbaikinya.

Baru saja menginstal nvm 1.1.7 dan masih memiliki masalah ini di Windows 10 Enterprise 1709.
Menonaktifkan McAfee Endpoint Security Firewall sebelum menginstal nvm dan menggunakan nvm install tidak membantu.

Situasi yang sama seperti ralfhandl di sini.

@robertmain - memang. npm telah mengubah banyak hal beberapa kali tanpa banyak mengintip.

@ralfhandl & @mmascolino - hanya memastikan... Anda menjalankan nvm use x.x.x sebelum npm help , kan? Saya melihat masalah aslinya dan menyadari bahwa OP tidak benar-benar menyebutkan menjalankannya (meskipun komentar menunjukkan output nvm dengan instruksi untuk menjalankan nvm use ).

Saya menutup masalah ini karena alasan berikut:

  1. Beberapa orang lupa menjalankan nvm use x.x.x (lihat tanggapan saya yang diperbarui untuk pesan asli di atas)
  2. Perubahan repo npm telah diperhitungkan (lihat masalah #373)
  3. Tidak banyak yang bisa saya lakukan tentang beberapa versi npm di mana izin dikodekan secara keras. Lihat https://github.com/coreybutler/nvm-windows/issues/300#issuecomment -332030011 untuk detailnya.

Jika Anda masih mengalami masalah seperti ini, buka edisi baru.

Pasti melakukan nvm menggunakan 8.11.4 sebelum mencoba menggunakan npm

Node 8.xx tunduk pada izin hard-coded npm (lihat #300). Dapatkah seseorang dengan Win 10 Enterprise ( @mmascolino atau @ralfhandl) mencoba dengan versi Node yang lebih baru atau lebih lama? Saya tidak melihat alasan mengapa NVM4W akan berperilaku berbeda dalam rasa Windows itu, tetapi ada masalah npm yang diketahui di Node 8.xx yang bisa menjadi penyebabnya.

Saya telah menginstal Node versi 10.9.0, 8.11.4, 6.14.4, dan 6.9.0.

Dalam semua kasus nvm install x.y.z tampaknya berfungsi dengan baik, dan setelah nvm use x.y.z Node itu sendiri berfungsi dengan baik, tetapi npm hilang dan saya harus mengunduh npm secara terpisah dan mengekstraknya ke C:\Users\xxx\AppData\Roaming\nvm\vx.y.z\node_modules .

ini dia:

C:\Users\mascolino.mm>nvm install 10.9.0
Downloading node.js version 10.9.0 (64-bit)...
Complete
Creating C:\Users\mascolino.mm\AppData\Roaming\nvm\temp

Downloading npm version 6.2.0... Complete
Installing npm v6.2.0...

Installation complete. If you want to use this version, type

nvm use 10.9.0

C:\Users\mascolino.mm>nvm use 10.9.0
Now using node v10.9.0 (64-bit)

C:\Users\mascolino.mm>npm
internal/modules/cjs/loader.js:583
    throw err;
    ^

Error: Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:581:15)
    at Function.Module._load (internal/modules/cjs/loader.js:507:25)
    at Function.Module.runMain (internal/modules/cjs/loader.js:742:12)
    at startup (internal/bootstrap/node.js:266:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:596:3)
internal/modules/cjs/loader.js:583
    throw err;
    ^

Error: Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:581:15)
    at Function.Module._load (internal/modules/cjs/loader.js:507:25)
    at Function.Module.runMain (internal/modules/cjs/loader.js:742:12)
    at startup (internal/bootstrap/node.js:266:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:596:3)

Folder node_modules ( C:\Users\mascolino.mm\AppData\Roaming\nvm\v10.9.0\node_modules ) benar-benar kosong.

Sama seperti @mmascolino di sini

Sama seperti @mmascolino di sini, satu-satunya perbedaan pada saya adalah folder tujuan untuk versi simpul yaitu c:\ProgramDatanvm\v10.11.0.

Folder node_modules benar-benar kosong.

sama

Saya juga mengalami masalah yang sama.

Pastikan Anda telah menghapus instalasi Node sebelumnya (seperti yang diinstruksikan di README). Ini adalah alasan paling umum untuk kesalahan ini, karena npm menjadi bingung di antara versi. Perhatikan kesalahan menyatakan Cannot find module , yang merupakan kesalahan npm. Ini menunjukkan npm _is_ terdeteksi.... tetapi bukan versi yang benar.

Periksa juga direktori temp Anda, dalam kasus @mmascolino adalah C:\Users\mascolino.mm\AppData\Roaming\nvm\temp untuk melihat apakah ada file. Jika tidak ada apa-apa, unduhan mungkin gagal karena beberapa alasan... yang dapat berupa pengaturan firewall, kesalahan jaringan, atau masalah izin.

@coreybutler IMO, README perlu ditingkatkan. Jika ini adalah langkah yang diperlukan, itu harus paragrafnya sendiri dan dicetak tebal.

Ini adalah salinan saat ini:

Muncul dengan installer (dan uninstaller), karena mendapatkannya harus mudah. Harap dicatat, Anda perlu menghapus versi node.js yang ada sebelum menginstal NVM untuk Windows. Hapus juga direktori instalasi nodejs yang ada (misalnya, "C:\Program Files\nodejs") yang mungkin tersisa. symlink yang dihasilkan NVM tidak akan menimpa direktori instalasi yang ada (bahkan kosong).

Ini tidak menyoroti pentingnya mencopot pemasangan versi yang ada, juga tidak memberikan cara mudah bagi pengguna untuk melakukannya. Jika ini adalah persyaratan untuk nvm-windows bekerja, kita harus menampilkan peringatan saat dijalankan (misalnya C;\Program Files\nodejs exists, this may cause problems with installation ). Lebih baik lagi akan memberikan perintah untuk membersihkan instalasi yang ada.

@cdtinney - Penginstal memiliki catatan tentang ini di dalamnya. Saya tidak bisa membuatnya tebal (di penginstal), tetapi ada layar untuk itu. Jangan ragu untuk memperbarui README dan mengirimkan PR. Saya akan menerimanya.

Hai,

Saya memiliki masalah serupa dengan yang dilaporkan di sini menggunakan nvm 1.1.7 pada Windows 10 yang telah diselesaikan di kepala master terbaru.

Pada dasarnya, nvm sedang mengunduh nodejs, npm zip diunduh dan diekstraksi dengan benar. Salinan ke direktori nodes_module gagal namun tanpa kesalahan.

Saya menarik versi master terbaru dan membuat instalasi secara lokal berfungsi dengan benar.

Satu masalah yang saya perhatikan ketika debugging adalah bahwa pada baris https://github.com/coreybutler/nvm-windows/blob/0a258f810d13eb20c56f6bebe575cd7451348d03/src/nvm.go#L298
Jika pemindahan gagal setelah mencoba lagi, kesalahan tidak dicatat atau penginstalan tidak gagal.

Apakah Anda dapat merilis versi baru dari master versi terbaru?

Terima kasih atas kerja samanya & salam hormat,
Fergus

Saya baru saja mengalami masalah ini. Saya telah mencoba semua solusi kecuali menonaktifkan McAfee, yang tidak boleh saya lakukan sehingga satu-satunya solusi yang berhasil bagi saya adalah mengunduh file zip Windows Binary node, unzip, dan pindahkan folder npm yang terletak di node_module dan letakkan di yang dibuat oleh nvm-windows yang terletak di C:\Program Files\nodejsnode_modules

Env saya adalah Windows 10 64bit 1803, menggunakan nvm windows 1.1.7 terbaru.

Beberapa orang perlu mengedit npm.cmd dan menambahkan PATH. (di suatu tempat di bawah direktori nvm, mungkin nvm\vX.Y.Znpm.cmd)

Pada baris 6, file executable node ditentukan.
Di env saya, itu ditunjukkan di bawah ini.
SET "NODE_EXE=%~dp0\node.exe"

Ini mencoba menggunakan node.exe di direktori yang sama.
Tapi sebenarnya ada node64.exe, bukan node.exe.
Jadi saya menulis ulang node.exe ke node64.exe.

Setelah itu, Anda perlu menambahkan direktori tempat npm.cmd ada ke PATH.
Tutup semua cmd.
Ini berfungsi dengan baik sejak membuka cmd baru.

Saya tidak tahu ini juga berfungsi dengan baik jika Anda menggunakan dan mengganti beberapa versi nodejs.

Dapat mengonfirmasi bahwa McAfee melanggar npm. Kami sudah mengecualikan folder tertentu, cukup instal jalur nvm dan npm ke folder itu.

Saya juga punya masalah ini.
Saya memecahkan masalah ini dengan menjalankan nvm-setup.exe sebagai administrator

Ubah direktori instalasi ke C:\ NVM

Saya mengunci percakapan ini karena masalah baru harus diajukan sebagai.... masalah baru.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat