Saya memiliki mesin Windows 7 yang, ketika Command Prompt dijalankan oleh pengguna normal, gagal memperluas variabel lingkungan di Windows 7 %PATH%
. Jika command prompt dijalankan sebagai administrator (klik kanan, Run as administrator ) kemudian %PATH%
diperluas dengan tepat.
Secara khusus, %PATH%
untuk cmd.exe
dijalankan sebagai pengguna (ditampilkan melalui set path
) adalah sebagai berikut:
Path=%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\Wbem;%SYSTEMROOT\System32\WindowsPowerShell\v1.0\;C:\Program Files\Microsoft Windows Performance Toolkit\
... sedangkan %PATH%
untuk cmd.exe
dijalankan sebagai Administrator adalah sebagai berikut:
Path=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\Wbem;%SYSTEMROOT\System32\WindowsPowerShell\v1.0\;C:\Program Files\Microsoft Windows Performance Toolkit\
Saya mencoba masuk sebagai pengguna baru untuk membuat profil baru, dan masalahnya tetap ada pada profil itu juga. HKEY_CURRENT_USER\Environment\PATH
tidak ada, dan HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\Path
cocok dengan jalur sistem-lebar yang ditetapkan dalam Properti Komputer -> Variabel Lingkungan.
Apakah ada yang punya ide tentang apa ini, atau di mana saya bisa melihat?
sumber
REG_SZ
masalah terjadi, jika saya mengaturnya kembaliREG_EXPAND_SZ
diperbaiki.Saya mengalami masalah yang sama ketika mencoba mengkonfigurasi Maven ...
Saya menemukan posting ini di Superuser yang menjelaskan masalah ini, tetapi tidak berhasil bagi saya. Masalahnya tampaknya tentang peningkatan hak, karena shell admin akan berfungsi, tetapi shell pengguna tidak. Saya akhirnya memutuskan untuk hanya membuat ulang variabel pengguna sebagai variabel sistem, dan menambahkannya ke jalur global.
Ini bekerja untuk beberapa variabel, tapi saya punya satu pasangan yang masih tidak akan berkembang. Saya membuat ulang mereka dengan nama-nama baru beberapa kali, tetapi tidak berhasil. Namun, variabel akhirnya diperluas dengan benar di shell pengguna setelah saya menonaktifkan UAC, reboot, mengaktifkan kembali UAC, dan reboot lagi.
sumber
Saya memiliki masalah yang sangat mirip - solusi sederhana adalah menambahkan titik koma setelah alias dalam definisi path .
Cerita panjang:
Saya menggunakan
node.js
sehingga memiliki alias NODE_HOME didefinisikan melalui variabel lingkungan pengguna. Saya kemudian menambahkan alias ini ke variabel lingkungan PATH saya .Apa yang saya temukan adalah bahwa setelah boot ulang, shell telah kehilangan path ke NODE_HOME sehingga
npm
dll tidak akan berfungsi. Apa yang sedang terjadi?Pada inspeksi, saya melihat bahwa NODE_HOME diatur, tetapi ajaibnya telah memperoleh semi-colon.
PATH sekarang berakhir pada string literal % NODE_HOME% alih-alih jalur yang diperluas ke folder simpul:
Untuk memperbaikinya:
Pertama, hapus semi-colon yang salah dari akhir definisi NODE_HOME .
Kedua, tambahkan tanda titik koma setelah simbol NODE_HOME dalam definisi PATH :
Sekarang ketika saya memulai shell baru dan memperluas PATH , ia menemukan NODE_HOME :
Dan
npm
berfungsi lagi!sumber
MASALAH : Masalah saya hanya sinilar, karena saya mengerti Anda dengan benar. "Path" saya berisi ...;% ANT_HOME% \ bin; ... Saya telah menetapkan variabel ANT_HOME di bawah Variabel System (bukan pengguna), dan CMD -> SET sama dengan "echo% ANT_HOME%" mencetaknya dengan benar .
SOLUSI : Saya memecahkan masalah dengan memindahkan folder dari c: \ dev \ 3rd \ ant ... ke c: ** Programm Files (x86) ** \ dev \ 3rd \ ant ...
sumber