Nvm-windows: Masalah dengan ruang kosong di jalur

Dibuat pada 17 Feb 2015  ·  71Komentar  ·  Sumber: coreybutler/nvm-windows

Halo! Saya mengalami masalah saat mencoba nvm use <node_version>
captura
Maaf untuk bahasa Spanyol di tangkapan layar. Artinya "c:\Users\Edu" tidak dikenali sebagai perintah internal... bla bla bla.
Nama pengguna saya adalah "Edu Martin" dan jalur saya adalah "c:\Users\Edu Martin\AppData\Roaming\nvm"
Apakah mungkin ada kesalahan dengan spasi hitam di jalur ?? Semua pengaturan di aplikasi saya adalah standar

Komentar yang paling membantu

Jadi perbaikan untuk ini adalah mengedit settings.txt Anda dan menggunakan skema penamaan folder Windows alternatif yang tidak memiliki spasi, yang untuk kasus saya adalah:

2

(settings.txt ada di AppData\Roaming\nvm secara default)

Semua 71 komentar

+1

Solusi bagi saya adalah mencopot dan menginstal ulang untuk pengguna Public . Tidak ideal tetapi senang menjalankan NVM di windows!

+1 banyak pemasangan windows memiliki nama pengguna dengan spasi

+1 untuk ini, mengalami masalah yang sama dengan nama pengguna saya

1

Jadi perbaikan untuk ini adalah mengedit settings.txt Anda dan menggunakan skema penamaan folder Windows alternatif yang tidak memiliki spasi, yang untuk kasus saya adalah:

2

(settings.txt ada di AppData\Roaming\nvm secara default)

@coreybutler bisakah kami memperbaikinya, tolong tolong?

:berdoa: :berdoa: :berdoa: :berdoa: :berdoa: :berdoa: :berdoa: :berdoa: :berdoa: :berdoa: :berdoa: :berdoa:

inilah gif untuk mencoba dan memaksa Anda ...

Lingkungan build saya telah berubah baru-baru ini/secara substansial, jadi masalahnya adalah merilis binari (saya memiliki skrip build yang benar-benar disesuaikan). Saya akan dengan senang hati menambahkan perbaikan ke cabang master, itu hanya perlu membangun dari sumber.

Saya harus pergi ke Inggris minggu depan, tetapi ketika saya kembali ke AS, saya akan mengatasi ini secepat mungkin.

Itu akan menyenangkan @coreybutler :) Juga, mungkin kita bisa menautkan build berikutnya (dengan patch ini) ke #17 dll?

Saya mengalami masalah ini karena ingin menggunakan "C:\Documents and Settings(my name)\Application Data\nvm" sebagai root. Jadi yang saya lakukan adalah menginstal ulang nvm, menetapkan "C:\" sebagai root alih-alih default selama instalasi, jadi sekarang menyimpan semua versi Node di "C:\nvm", yang tentu saja tidak memiliki spasi di jalur. Settings.txt mengkonfirmasi ini sebagai root. Saya hanya perlu mengingat untuk cd ke C:\ sebelum menggunakan salah satu perintah nvm, selain itu muncul kesalahan yang mengatakan tidak dapat menemukan settings.txt. Dalam kasus saya, karena C:\ tidak terkait dengan satu pengguna mana pun, ketika saya beralih ke versi Node menggunakan "nvm use <version>" ia menanyakan akun pengguna mana yang ingin saya gunakan untuk menjalankan program. Tapi tampaknya berjalan dengan baik; Saya mendapatkan pesan "sekarang menggunakan simpul <versi>".

+1 Untuk siapa pun yang ingin melakukan solusi mengedit settings.txt Anda dapat mencoba ini dari baris perintah untuk mendapatkan jalur yang diformat dengan benar

cmd /c untuk %A di ("C:\Users\Nama Saya Dengan Spasi\AppData\Roaming\nvm") lakukan @echo %~sA

Menginstal nvm-windows ke dalam Program Files juga menyebabkan kesalahan ini. Memperbarui settings.txt seperti di bawah ini menyelesaikan masalah, tetapi alangkah baiknya jika ini diperbaiki, atau ditambahkan ke ReadMe sebagai 'Gotcha'!

root: C:\PROGRA~1\nvm
jalur: C:\PROGRA~1\nodejs

menggunakan tautan persimpangan simbolis di windows yang saya temukan adalah solusi yang cocok untuk masalah ini juga
gunakan sesuatu seperti ini
mklink /J nvm_home "C:\Users\Chris McGrath\AppData\Roaming\nvm"

lalu perbarui settings.txt dengan alamat persimpangan

setelah saya membuat pengalihan tautan ini mulai bekerja tanpa masalah

Jadi masalah ini telah terbuka selama hampir satu tahun. Apakah nvm-windows mati?

@codeimpossible - Tidak mati, saya baru saja memiliki prioritas hidup yang lebih tinggi untuk ditangani. Saya akan memposting catatan tentang itu di gitter.

@coreybutler hanya ingin memberi tahu Anda bahwa saya menggunakan nvm-windows setiap hari dan menghargai semua kerja keras yang Anda masukkan ke dalam proyek

@kirkouimet Terima kasih... senang mendengarnya sangat membantu!

Hai coreybutler, pekerjaan bagus dengan nvm. Ini benar-benar membuat hidup saya lebih mudah :D

Tapi bisakah Anda menulis info tentang ruang di mana saja? Sesuatu seperti

"Jika Anda memiliki spasi di nama pengguna Anda, ubah direktori default yang digunakan oleh penginstal dan pilih jalur tanpa spasi."

Saya tidak pernah mengedit wiki di github. Saya memiliki sedikit ketakutan apa yang bisa saya lakukan.

@AntiCZ - Ide bagus. Saya menambahkan halaman masalah umum untuk mengatasi ini. Saya akan terus menambahkan ini jika perlu.

Saya memecahkan milik saya menggunakan:
cmd /c untuk %A di ("C:\Users\Nama Saya Dengan Spasi\AppData\Roaming\nvm") lakukan @echo %~sA
oleh @mhchristensen .
Dan kemudian ubah root di setting.txt
Terima kasih banyak :+1:

Tanpa spasi di $env:USERPROFILE apakah orang masih mengalami masalah dengan jalur nodejs yang memiliki spasi di Program Files? Saya tidak melihat perilaku yang sama pada VM Windows 2012R2 saya.

Saya akan menguji dengan pengguna dengan spasi di namanya untuk melihat apakah itu menyebabkan semacam kegagalan cascading. Akan sangat bagus untuk mendapatkan beberapa versi OS dan cmd Prompt yang Anda gunakan (PowerShell/CMD/Bash4Windows/GitBash).

Saat ini saya sedang memfaktorkan ulang paket Chocolatey yang dibuat seseorang untuk nvm dan berharap untuk segera menerbitkannya. Itu menghindari penginstal dan menggunakan jalur penginstalan cokelat yang tidak memiliki spasi, dan saya tidak memiliki masalah dengan jalur simpul yang memiliki spasi di file settings.txt.

Saya memiliki masalah yang hampir sama, kecuali nama pengguna saya memiliki ampersand (&) alih-alih spasi. Dalam situasi ini, menggunakan nama folder alternatif tidak membantu, karena nama pendek pun masih memiliki ampersand. Namun, membuat tautan simbolis, seperti yang disarankan @clmcgrath , adalah solusi yang baik bagi saya.

Instal saja ke direktori tanpa sesuatu yang istimewa. Misalnya: C:\nvm\

Juga mengapa paket NVM di Chocolatey menggunakan jalur C:\ProgramData\nvm karena itu adalah Program Files yang setara dengan "Semua Pengguna" tetapi tanpa spasi.

Ini dapat diatasi dengan menggunakan nama alternatif untuk folder atau file dengan spasi. Misalnya, saya telah menginstal nvm di "C:\Programs Files\nvm". Buka folder di atas yang memiliki spasi dan gunakan opsi /X untuk mendapatkan daftar direktori dengan nama antik 8.3:

cd \
dir /X

Saya mendapat garis yang terlihat seperti...

15/2/2017 15:44 \

Kemudian cukup edit file settings.txt (dalam \Program Files\nvm dalam kasus saya) dan edit nama folder yang menyinggung:

root: C:\Program\~1\nvm
jalur: C:\Progra\~1\nodejs

(Ini adalah solusi yang sama yang diberikan @markbrownsword lebih dari setahun yang lalu, tetapi pesannya sedikit salah format oleh mesin penurunan harga.)

jendela

pindah ke jalur di sana tanpa spasi

atau

menjalankan cmd sebagai administrator
dan kemudian mklink ke jalur baru di sana tanpa spasi.

@coreybutler Adakah berita tentang masalah ini? Aku baru saja terkena itu. Saya bersedia untuk PR jika Anda memberi tahu saya apa yang harus dicari :)

Saya baru saja merilis v1.1.6 , yang memanfaatkan sistem manajemen jalur baru di Go 1.8.3. Semua pengujian lokal saya bekerja dengan spasi dan karakter khusus di jalur, tetapi saya hanya dapat menguji pada instalasi bahasa Inggris Windows 10 saat ini. Saya berharap beberapa orang yang pernah mengalami masalah ini dapat mengujinya. Dengan asumsi masalah teratasi, saya akan merilis 1.1.6 secara resmi sebagai perbaikan.

TBH saya belum pernah mengalami masalah ini di sejumlah rilis sekarang, cukup lancar selama sekitar satu tahun sekarang

@clmcgrath - senang mendengarnya!

Untuk klarifikasi, keingintahuan utama saya adalah dengan instalasi non-Inggris, yang menghasilkan beberapa karakter tersembunyi Go yang dikenali sebagai terminator string.... itu memotong jalur sebelum waktunya.

Masih tidak berfungsi. Saya mencoba mengubah setting.txt yang tidak membantu juga.

@chillerfx - Apakah ada perintah yang dijalankan, atau hanya nvm use gagal? Juga, di mana lingkungan Anda (non-Inggris?)

Di OS windows 7 saya, 'nvm list' berfungsi tetapi 'nvm use' tidak bekerja. Lokal saya adalah bahasa Inggris. Juga mengubah settings.txt untuk menggunakan ~1 karena ruang di nama pengguna tidak berfungsi. Ketika ini selesai, daftar nvm juga tidak berfungsi.

Pengaturan saya:

nvm v1.1.6
Windows 10 Pro (versi 1703, build 15063.540)
Lokal: Inggris (UK)

Masih mengalami masalah ini. nvm install latest berhasil tetapi nvm use 8.4.0 gagal. Nama pengguna saya memiliki spasi di dalamnya seperti "John Smith" dan kesalahan yang saya dapatkan adalah exit status 1: 'C:\Users\John' is not recognized as an internal or external command, operable program or batch file.

Semuanya (daftar, gunakan, instal) berfungsi saat mengedit file pengaturan saya seperti yang disarankan @ryan-mcguire.

Bisakah mereka yang mengalami masalah menjalankan nvm root dan melaporkan apa yang dicetak?

nvm root: C:\Users\Jeff Utz\AppData\Roaming\nvm

Pengaturan saya:

nvm v1.1.6
Windows 10 Pro (1703, membangun 15063.540)
Lokal: Inggris (AS)

Semua perintah berfungsi dengan pengecualian nvm use ... nvm on akan mengaktifkan nvm tetapi kemudian memberikan kesalahan exit status 1

Coba gunakan nama jalur yang dipersingkat.
Untuk menemukan jalur yang dipersingkat:
C:\Pengguna
dir /x

Jangan lupa untuk me-restart Windows.

error

bagaimana mengatasi kesalahan ?? tolong bagikan jawaban Anda..

@psiddharth709 - tolong berhenti memposting pertanyaan yang sama dalam beberapa masalah.

Saya menggali solusi c:\nvm. Saya suka memiliki barang-barang saya, khususnya. pada Windows dalam folder saya dapat dengan mudah menemukannya (c:\xammp adalah server Apache saya). Melakukannya seperti itu dan semuanya baik-baik saja. Terima kasih atas kerja kerasnya.

@coreybutler Anda dapat menguji masalah dengan menginstal nvm di folder apa pun dengan karakter spasi. Misalnya di C:\Program files\nvm (kesalahan seperti yang ditunjukkan oleh XepherX di atas -- "'C:\Program' tidak dikenali...").

Dugaan saya adalah masalahnya dengan menjalankan elevate.cmd dengan exec.Command . Saya tidak yakin karena saya tidak tahu cara men-debug Go. Tetapi ketika saya mengganti nama elevate.cmd saya mendapatkan kesalahan tentang file yang hilang dan ketika saya mengembalikan elevate.cmd saya mendapatkan kesalahan dengan "'C:\Program' tidak dikenali..."

Jadi ini sepertinya bukan masalah dengan set karakter. Dan masalah terjadi baik di Windows 7 dan Windows 10. Bahkan jika cmd sudah ditinggikan (Jalankan sebagai administrator).

@coreybutler Sayangnya, masih masalah yang sama bagi saya seperti orang lain dalam masalah ini, bahkan menggunakan versi pra-rilis 1.1.6.

Terimakasih semuanya! Saya minta maaf atas keterlambatan dalam mengeluarkan versi baru.... Saya masih sibuk (dan merekrut).

@Eccenux - Anda mungkin elevate.cmd . Go dikompilasi, jadi debugging terjadi sebelum pembuatan. Saya pikir perintah elevate adalah penyebab yang lebih mungkin, tetapi akan mengkonfirmasi kesempatan pertama yang saya dapatkan.

Saya memiliki masalah yang sama dengan @davidrosevear. nvm install bekerja dengan 1.1.6, tetapi nvm use tidak. Beri tahu saya jika saya dapat membantu @coreybutler.

Saya masih mendapatkan masalah ini

@seanpoulter dan siapa pun yang tertarik untuk membantu ....

Saya memiliki masalah besar - _banyak_ klien baru mengalir ke perusahaan konsultan saya. Masalahnya: waktu yang sangat sedikit untuk mengerjakan hal lain. Setiap mata ekstra yang dapat melihat masalah ini akan sangat dihargai. Saya masih belum memiliki kesempatan untuk melihat saran @Eccenux re: elevate.cmd , tapi saya pikir itulah titik awalnya. 1.1.6 memiliki banyak karakter go asli yang melarikan diri, jadi naluri saya mengatakan masalahnya bukan pada Go... tetapi perintah elevate tidak diuji dengan sisa kode.

Selamat! Itu masalah besar untuk memiliki memang.

Mari kita lihat solusi komunitas dan PR untuk yang satu ini saat @coreybutler sedang sibuk. Saya punya PR besar untuk ditinjau di repo lain (vscode-jest), jadi itu akan sedikit sebelum saya bisa menyelami yang ini sendiri.

versi file yang dipersingkat itu tidak berfungsi dan juga menginstal R di jalur dengan spasi
Bagaimana kita bisa memperbaiki masalah ini. Jika kita menginstal R di direktori yang berbeda apakah masih menggunakan variabel path untuk hal lain?

Karena sudah lama sejak rilis terakhir di sini, saya memutuskan untuk menerbitkan satu yang berisi perbaikan yang saya kirimkan sebelumnya di fork saya untuk sementara waktu:
https://github.com/shadow/nvm-windows/releases/tag/1.1.7

Saya menyelesaikannya dengan memindahkannya ke C:nvm, tetapi saya ingin tahu apakah ada perbaikan yang direncanakan....

Terima kasih @shadow baru saja menginstal versi Anda yang berasal dari v 1.1.6 dengan nama pengguna saya "Cody Swartz" di jalur saya, saya mendapatkan kesalahan yang sama dengan yang didapat orang lain dan perbaikan Anda terlihat bersih dan langsung ke intinya. Sekarang nvm use berhasil! 🎉

Saya baru saja mengunduh dan menginstal nvm untuk windows untuk pertama kalinya hari ini dan mengalami masalah ini. Saya menjalankan versi 1.1.7. Apakah ada sesuatu yang saya lewatkan di sini? Bukankah ini seharusnya diperbaiki untuk v1.1.6 dan yang lebih baru?

Juga mengalami masalah ini. Membuat semuanya cukup banyak tidak dapat digunakan.

EDIT: Memperbaikinya melalui trik ~1.

Jadi perbaikan untuk ini adalah mengedit settings.txt Anda dan menggunakan skema penamaan folder Windows alternatif yang tidak memiliki spasi, yang untuk kasus saya adalah:

Hanya untuk memperluas ini lebih tepat, konversi adalah sebagai berikut: C:\Users\John Doe -> C:\Users\JOHND~1

Bugnya masih ada. Ini tidak terpecahkan. Menggunakan nvm 1.17

root: C:\PROGRA1nvm
jalur: C:\PROGRA1\nodejs

Konfigurasi di atas yang disebutkan sebelumnya di utas ini salah, atau setidaknya tidak berfungsi untuk saya ... ;)
Bagi siapa saja yang tersandung pada masalah ini.
Ketika Anda telah menginstal nvm dan nodejs di C:\Program Files cukup gunakan konfigurasi berikut di settings.txt dan itu akan berfungsi.

root: C:\PROGRA~1\nvm
path: C:\PROGRA~1\nodejs

@Laslo89 memiliki jawaban yang benar, mengganti spasi dengan ~ berfungsi dengan baik

Jadi perbaikan untuk ini adalah mengedit settings.txt Anda dan menggunakan skema penamaan folder Windows alternatif yang tidak memiliki spasi, yang untuk kasus saya adalah:

2

(settings.txt ada di AppData\Roamingnvm secara default)

Catatan singkat untuk mereka yang tidak memiliki kemampuan teknologi umum seperti saya. Jika Anda menggunakan dir *. /x di command prompt, itu akan mencantumkan direktori di dalam lokasi saat ini yang memberi Anda nama formulir 8.3 di kolom tengah. Anda kemudian dapat menggunakan ini untuk mengubah pengaturan seperti yang diuraikan di atas. Padahal, seperti yang disebutkan sebelumnya, Program Files menjadi PROGRA~1 .

situs web mana yang menyediakan tutorial terbaru terkait ion.? tolong beritahu aku.....

>

bagaimana masalah ini masih belum diperbaiki ?! Jika ini adalah regresi di 1.1.7, mungkin pertimbangkan untuk menambahkan beberapa tes integrasi/unit/regresi untuk mencakup kasus spasi yang tidak terlalu umum di windows (atau linux dalam hal ini) nama jalur sebelum merilisnya...

Apakah kalian membutuhkan dukungan untuk ini atau sudah ada yang aktif mengerjakan ini?

@julian-becker, pertama-tama saya ingin menyebut Anda mulai agresif:

bagaimana masalah ini masih belum diperbaiki ?!

Ini kasar. Orang-orang di komunitas open source tidak berutang waktu atau perhatian kepada Anda. Apa yang membuat waktu luang Anda lebih berharga daripada pengelola, atau waktu kita? Sepertinya Anda tidak meluangkan waktu untuk melihat bahwa @coreybutler telah menjawab pertanyaan Anda di sini :

Saya memiliki masalah besar - banyak klien baru mengalir ke perusahaan konsultan saya. Masalahnya: waktu yang sangat sedikit untuk mengerjakan hal lain.

Anda juga melewatkan solusi dan garpu yang dibagikan @shadow.

Kedua, Anda memiliki rencana permainan yang bagus tentang bagaimana hal ini harus dilakukan. Lakukan! Jika Anda punya waktu, semua orang yang menonton masalah ini akan menghargainya karena telah diperbaiki. Lihat apa yang telah dilakukan @shadow, tambahkan tes, lakukan PR, dan hubungi di sini untuk mendapatkan bantuan terkait tinjauan kode. Seseorang cukup mementingkan diri sendiri untuk membantu menyelesaikannya. Semoga berhasil, dan hubungi di sini jika Anda membutuhkan bantuan! 👏

mengerjakan PR

Untuk menghindari kemungkinan kebingungan dan pekerjaan yang dilakukan dua kali, saya ingin mencatat bahwa perbaikan saya sudah digabung , hanya masalah untuk benar-benar melepaskannya.

Sempurna! Saya juga tidak punya banyak waktu untuk membaca. 😆

@shadow Baru saja mengalami masalah ini lagi, adakah yang tahu kapan akan dirilis?

@coreybutler Maukah Anda menautkan ke rilis di garpu saya di posting terakhir di sini dan kemudian mengunci utas ini? Saya rasa tidak perlu dibahas lebih lanjut...

@coreybutler mungkinkah melakukan rilis?

Tolong lepaskan ini :)

Menggunakan garpu yang dirilis oleh bayangan (lihat tautan di atas) berfungsi untuk saya sebagai satu-satunya hal. Terima kasih banyak!

Saya telah menautkan ke rilis @shadow dalam masalah umum .

Maaf butuh waktu lama untuk memotong rilis. Saya tahu ini kelihatannya mudah, tetapi waktu sangat kejam bagi saya. Mungkin suatu saat saya akan menulis tentangnya.

1.Dalam cmd, buka direktori home Anda dan ketik dir/x untuk melihat nama singkat untuk folder ini
2. Kemudian ganti nama pengguna Anda dengan nama singkat ini di pengaturan.txt
3. Ini bekerja

+1 Untuk siapa pun yang ingin melakukan solusi mengedit settings.txt Anda dapat mencoba ini dari baris perintah untuk mendapatkan jalur yang diformat dengan benar

cmd /c untuk %A di ("C:\Users\Nama Saya Dengan Spasi\AppData\Roamingnvm") lakukan @echo %~sA

Terima kasih banyak hal ini menyelamatkan hidup saya.

Terpecahkan!!

Untuk seseorang yang tidak dapat bekerja dengan metode ~1 oleh @kirkouimet (Terima kasih sobat)
Buka CMD, buka folder Pengguna dan Dapatkan nama Folder Singkat.

dan ketik

> dir\x

Annotation 2020-05-25 112714

Sekarang nanti setelah menyalin atau Mencatat nama folder
Annotation 2020-05-25 113201

Semoga membantu

Terpecahkan!!

Untuk seseorang yang tidak dapat bekerja dengan metode ~1 oleh @kirkouimet (Terima kasih sobat)
Buka CMD, buka folder Pengguna dan Dapatkan nama Folder Singkat.

dan ketik

> dir\x

Annotation 2020-05-25 112714

Sekarang nanti setelah menyalin atau Mencatat nama folder
Annotation 2020-05-25 113201

Semoga membantu

Terima kasih, semuanya, yang menyarankan solusi settings.txt tetapi khususnya Swarag-N untuk penjelasan yang menyeluruh. Saya senang saya mendarat di sini dan tidak mengubah nama folder profil pengguna saya.
Terima kasih

Apakah halaman ini membantu?
0 / 5 - 0 peringkat