Windows 8
1.1.5
Instal versi node 8.2.1
Gagal dengan kesalahan The filename or extension is too long
λ nvm install 8.2.1
Downloading node.js version 8.2.1 (64-bit)...
Complete
Downloading npm version 5.3.0... Complete
Installing npm v5.3.0...2017/07/21 09:02:31 mkdir C:\Users\suhas.karanth.RB\AppData\Roaming\nvm\temp\nvm-npm\npm-5.3.0\node_modules\libnpx\node_modules\yargs\node_modules\read-pkg-up\node_modules\read-pkg\node_modules\load-json-file\node_modules\parse-json\node_modules\error-ex\node_modules\is-arrayish: The filename or extension is too long.
Meskipun ini _adalah masalah, saya ragu ada cara langsung untuk memperbaikinya. Namun, membuat masalah ini untuk membagikan bagaimana saya mengatasinya dan bagaimana mungkin hal itu dapat dihindari.
Saya menginstal versi pra-rilis terbaru dari nvm ( v1.1.6
) tetapi kali ini menginstalnya ke C:\nvm\
untuk menghemat panjang jalur. Berhasil memasang simpul v8.2.1
setelah ini. Apakah menurut Anda masuk akal untuk menginstal nvm ke jalur ini secara default?
Ada yang salah dengan penginstalan ini ... Apakah Anda memiliki dua versi NVM yang diinstal secara bersamaan?
Mungkin sudah terlambat pada saat ini, tetapi apa yang dihasilkan echo %NVM_SYMLINK%
?
Tidak. Saya tidak memiliki 2 versi NVM yang diinstal pada saat kesalahan terjadi.
Mungkin sudah terlambat pada saat ini, tetapi apa yang dihasilkan
echo %NVM_SYMLINK%
?
Sebenarnya belum terlambat. Saya memiliki terminal terbuka yang masih memiliki lingkungan yang lebih tua.
λ where nvm
C:\Users\suhas.karanth.RB\AppData\Roaming\nvm\nvm.exe
λ echo %NVM_SYMLINK%
C:\Program Files\nodejs
Selain itu, saya telah menginstal dan menggunakan beberapa versi node melalui NVM sebelumnya:
λ nvm list
* 8.1.2 (Currently using 64-bit executable)
8.1.1
8.1.0
8.0.0
6.10.3
6.10.0
5.12.0
4.8.0
4.2.6
Saya mengalami masalah yang sama.
Windows 10
Cangkang cmder
NVM 1.1.5
Ini terjadi dengan simpul 8.2.0
dan 8.2.1
8.1.4
dan 8.1.3
berfungsi dengan baik.
$ nvm install 8.2.0
Downloading node.js version 8.2.0 (64-bit)...
Complete
Downloading npm version 5.3.0... Complete
Installing npm v5.3.0...2017/07/22 00:15:41 mkdir C:\Users\Christopher\AppData\Roaming\nvm\temp\nvm-npm\npm-5.3.0\node_modules\libnpx\node_modules\yargs\node_modules\read-pkg-up\node_modules\read-pkg\node_modules\load-json-file\node_modules\parse-json\node_modules\error-ex\node_modules\is-arrayish: The filename or extension is too long.
Saya ingin tahu apakah kita harus mengambil ini dengan npm upstream ..
@clowenhg Jika Anda menginstal nvm langsung ke C:\nvm
, masalah akan terselesaikan tetapi instalasi node Anda yang sudah ada tidak akan dikenali lagi. Saya telah memindahkan beberapa folder node ke C:\nvm
dan dapat melihatnya terdaftar tetapi tidak pernah mendapat kesempatan untuk mengujinya. Berkat pembaruan windows dan boot loop.
Itu mungkin akan berhasil, tetapi sepertinya pekerjaan sementara sampai hal berikutnya ingin masuk satu direktori lagi lebih dalam. Jadi ya, mengangkat ini sebagai masalah untuk NPM mungkin akan menjadi keputusan yang bagus.
Melihat 8 belum pada versi LTS finalnya, saya hanya kembali ke 8.1.4 untuk saat ini.
Tampaknya ada sejumlah masalah dengan versi baru npm, khususnya yang menyertakan dukungan npx. Saya telah menambahkan dukungan untuk npx di cabang master dan akan merilisnya ketika 1.1.6 resmi (saat ini sedang diuji). Namun; bahkan di cabang tersebut, npx masih gagal (juga gagal melalui installer Windows Node mandiri tanpa NVM4W).
Saya yakin ini adalah masalah npm, bukan masalah NVM4W. Saya menutup masalah dan menandainya sebagai masalah upstream.
@coreybutler Klarifikasi kecil jika Anda tidak keberatan. Mengapa Anda harus membuat perubahan untuk dukungan npx? Bahkan dengan node v8.1
, npx tersedia dan dapat digunakan, meskipun bermasalah di windows. Tapi nvm seharusnya tidak melakukan apapun untuk ini.
Node 8.1 _not_ dikirimkan dengan dukungan npx. Jika Anda memilikinya di 8.1, Anda harus menjalankan npm install -g npm
suatu tempat di sepanjang baris untuk meningkatkan npm. Perintah npx ditambahkan di npm v5.3.0, dan versi pertama Node yang dikirimkan dengan npm 5.3.0 adalah 8.2.1. Untuk detail spesifik, lihat # 288.
Ya .. Anda mungkin benar. Saya ingat mengupgrade npm.
Saya memiliki masalah yang sama, solusi yang saya miliki adalah:
git clone https://github.com/npm/npm.git
maka kamu harus menjadi baik
Terima kasih @michaelkdh Ini berhasil untuk saya. 👍
Hal yang sedikit berbeda adalah ketika saya mengkloning 'npm.git' folder 'npm' dibuat. Dan saya harus memindahkan folder 'npm' ke 'node_modules'.
@ gblue1223 hal yang sama, hanya perlu npm di tempat. Bersulang,
@ coreybutler Menurut masalah yang Anda
Jika Anda menginstal terbaru (1.1.6) dan alih-alih C:/Users/<username>/AppData/Roaming/nvm
Anda memilih C:/nvm
sebagai folder instalasi, itu akan berfungsi. Saya tidak mengalami masalah saat memasang 8.4.0
:)
Bagi saya, menggunakan nvm root
untuk mengubah jalur nvm
tidak berfungsi, saya mendapat pesan kesalahan yang aneh. Itu tidak menyalin nvm <commands>
dan bahkan node
berhenti bekerja.
Mengkloning npm
secara manual seperti yang disarankan @michaelkdh juga tidak berfungsi, dan tampak seperti hackish dibandingkan dengan instalasi yang bersih
@ peterbakonyi05 Mendefinisikan ulang folder nvm hanya untuk menginstalnya juga masih
@Sieabah Saya setuju, seluruh masalahnya aneh. Namun saya pikir itu masih lebih baik daripada 2 solusi yang diusulkan lainnya (sebenarnya tidak ada yang berhasil untuk saya)
Bagi mereka yang masih mengalami ini, dapatkah seseorang memberikan langkah-langkah untuk membuat ulang kesalahan ini? Atau mungkin screencast? Saya belum benar-benar melihat ini beraksi.
Juga, saya perhatikan banyak orang menyalin / menempel dari terminal mereka ... dan sintaks seperti /c/whatever
, lambda, dll terus muncul .... semuanya menunjukkan orang menggunakan hal-hal seperti Cygwin , git shells, cmder, dll. Harap dicatat bahwa shell ini _tidak selalu mengikuti standar platform Windows_, dan _do_ mempengaruhi cara membaca path. Ada beberapa masalah lain yang mengutip ini, jadi coba semuanya di terminal standar sebelum memposting untuk memastikan itu adalah masalah NVM4W dan bukan masalah terminal-shell.
@coreybutler Ini dia, dengan cmd.exe
C: \ Users \ Christopher> nvm install 8.4.0
Mengunduh node.js versi 8.4.0 (64-bit) ...
Lengkap
Membuat C: \ Users \ Christopher \ AppDataRoamingnvm \ temp
Mendownload npm versi 5.3.0 ... Selesai
Menginstal npm v5.3.0 ... 2017/09/05 16:50:14 mkdir C: \ Users \ Christopher \ AppDataRoamingnvm \ tempnvm-npmnpm-5.3.0node_modules \ libnpxnode_modules \ yargsnode_modules \ read-pkg-upnode_modules \ read-pkgnode load-json-filenode_modules \ parse-jsonnode_modules \ error-exnode_modules \ is-arrayish: Nama file atau ekstensi terlalu panjang.
C: \ Users \ Christopher> di mana nvm
C: \ Users \ Christopher \ AppDataRoamingnvmnvm.exe
C: \ Users \ Christopher> nvm install 8.4.0
Mengunduh node.js versi 8.4.0 (64-bit) ...
Lengkap
Membuat C: \ Users \ Christopher \ AppDataRoamingnvm \ temp
Mendownload npm versi 5.3.0 ... Selesai
Menginstal npm v5.3.0 ... 2017/09/05 16:50:14 mkdir C: \ Users \ Christopher \ AppDataRoamingnvm \ tempnvm-npmnpm-5.3.0node_modules \ libnpxnode_modules \ yargsnode_modules \ read-pkg-upnode_modules \ read-pkgnode load-json-filenode_modules \ parse-jsonnode_modules \ error-exnode_modules \ is-arrayish: Nama file atau ekstensi terlalu panjang.
C: \ Users \ Christopher> di mana node
C: \ Program Filesnodejsnode.exe
C: \ Users \ Christopher> di mana npm
C: \ Program Filesnodejsnpm
C: \ Program Filesnodejsnpm.cmd
Saya juga menggunakan nvm versi 1.1.5 jika itu membuat perbedaan (mungkin Anda menggunakan 1.1.6?)
Saya dapat mengonfirmasi bahwa peningkatan ke 1.1.6 memperbaiki masalah ini. Masuk akal karena sepertinya beberapa manajemen jalur file sekarang menggunakan pustaka Go asli.
Itu juga berarti bahwa bug jalur file berada dalam nvm daripada npm itu sendiri. Setiap bug yang diajukan di npm mungkin ingin diperiksa lagi.
Terima kasih @ computerquip-streamlabs. Saya mendapat masalah ini dan diselesaikan dengan memutakhirkan nvm dengan,
scoop install [email protected]
Dan kemudian saya bisa menginstal node 8.7.0 dengan nvm.
Menginstal nvm 1.1.6 memperbaiki bug dengan "npm menginstal: Nama file atau ekstensi terlalu panjang"
Dari: C: \ Users \ [username] \ AppDataRoamingnvm
root: C:\nvm
path: C:\Program Files\nodejs
arch: 64
proxy: none
elevate.cmd
dan elevate.vbs
ke: C: nvmKemudian itu berhasil untuk saya!
Membuka kembali karena beberapa pengguna masih mengalami ini.
FWIW, saya menjalankan Windows 10, saya memang mengaktifkan jalur file yang panjang, tetapi masih tidak dapat menginstal versi node di atas 6.x ... karena masalah dengan jalur file yang panjang di npm v 5.6, memutakhirkan ke nvm 1.1.6 memperbaiki masalah untuk saya.
Komentar yang paling membantu
Jika Anda menginstal terbaru (1.1.6) dan alih-alih
C:/Users/<username>/AppData/Roaming/nvm
Anda memilihC:/nvm
sebagai folder instalasi, itu akan berfungsi. Saya tidak mengalami masalah saat memasang8.4.0
:)Bagi saya, menggunakan
nvm root
untuk mengubah jalurnvm
tidak berfungsi, saya mendapat pesan kesalahan yang aneh. Itu tidak menyalinnvm <commands>
dan bahkannode
berhenti bekerja.Mengkloning
npm
secara manual seperti yang disarankan @michaelkdh juga tidak berfungsi, dan tampak seperti hackish dibandingkan dengan instalasi yang bersih