Saya tahu ini aneh dan saya telah menghabiskan hampir 3 hari mencari solusi online tanpa mendapatkan yang berguna. Jadi saya memutuskan untuk datang ke sini.
Saya baru saja memutakhirkan ke Windows 10 dari Windows 8.1.
Sekarang saya ingin menetapkan variabel Lingkungan untuk instalasi baru saya dari Apache Maven.
Setiap kali saya membuat variabel pengguna, semuanya baik-baik saja. Namun, saya juga perlu membuat variabel sistem di mana saya harus menambahkan direktori bin ke variabel yang saya buat di variabel pengguna untuk menjadi "path".
Sekarang, setiap kali saya melakukan ini saya mendapatkan erron yang mengatakan "Variabel Lingkungan ini terlalu besar. Sebagai akibatnya, saya tidak dapat membuat jalan.
Saya telah melampirkan gambar kesalahan ini.
Saya akan menghargai ini jika ada yang bisa membantu saya untuk menyelesaikan masalah ini.
sumber
PATH
variabel lingkungan. Solusi yang tepat telah ada selama hampir 2 dekade sekarang . Tetapi mendorong pengembang untuk menggunakannya seperti mencabut gigi.Jawaban:
Ketika variabel PATH kelebihan beban dengan terlalu banyak nilai, ini mencapai titik di mana Anda tidak dapat menambahkan nilai lagi. Mencoba yang berikut ini akan menyelesaikan masalah Anda.
Solusi 1:
Jika ini masih tidak berhasil maka cobalah untuk menyalin beberapa bagian dari variabel PATH nilai yang sudah ada ke 'NEWPATH' dan kemudian menambahkan 'NEWPATH'
Solusi 2:
Periksa nilai variabel PATH jika Anda bisa mengelompokkan dan memperpendek jalur. Sebagai contoh,
C: \ Program Files \ Microsoft SQL Server \ 102 \ Tools \ Binn \; C: \ Program Files \ Microsoft SQL Server \ 102 \ DTS \ Bin \;
dapat digabungkan menjadi
C: \ Program Files \ Microsoft SQL Server;
Dengan cara ini Anda dapat membangun lebih banyak ruang ke dalam variabel PATH panjang tetap Anda dan akhirnya menyesuaikan lokasi direktori bin Anda menjadi PATH.
Semoga ini bisa membantu Anda!
sumber
setx PATH
karena ini akan langsung menyelesaikan%NEWPATH%
dan string yang dihasilkan akan sekali lagi terlalu lama ... Jadi, menggunakan pendekatan ini, hanya dialog dan bukan baris perintah yang harus digunakanpdflatex
harus ada diPATH
, jika saya meletakkan lokasipdflatex
diNEWPATH
,pdflatex
itu tidak ditemukan lagi ("perintahpdflatex
tidak dikenali" ...)Ada beberapa cara untuk membersihkan variabel jalur Anda. Cara termudah adalah menggunakan Rapid Environment Editor . Utilitas gratis ini akan,
Saya melakukan langkah-langkah di atas secara berurutan dan menggunakan langkah ke-3 hanya untuk jalur terpanjang sampai ukuran variabel Path di kontrol lagi.
Jika Anda ingin lebih maju, inilah sedikit alat C # yang dapat Anda modifikasi ke logika apa pun yang ingin Anda terapkan.
sumber
Solusi lain atau lebih penyelesaian untuk melewati batas panjang variabel PATH Lingkungan adalah mengelola jalur Anda (tambahkan, hapus atau perbarui) menggunakan
PowerShell
skrip;Abadikan variabel PATH saat ini dengan mengklik "Edit Teks" (lihat screenshot di atas) dan salin ke clipboard Anda dan simpan dalam file teks sebagai cadangan juga untuk menghindari kejutan buruk. Ini tidak wajib tetapi akan memungkinkan Anda untuk memulihkan jika terjadi kesalahan.
Sekarang setelah dicadangkan, tambahkan berikut ini ke file PowerShell (.ps1) baru (ubah baris pertama di bawah ini dengan jalur folder yang ingin Anda tambahkan (bagian setelah tanda +):
$ newPath = $ env: Path + '; C: \ Users .... \ FirstFolderToAddToPath; C: \ Users .... \ SecondFolderToAddToPath; '
[Lingkungan] :: SetEnvironmentVariable ("Path", $ newPath, "Machine")
$ env: Path = $ newPath
Ini adalah bagaimana saya berhasil mendapatkan variabel PATH (lama) saya kembali setelah bermain dengan Windows 10 UI, terjebak oleh batasan panjang dan kehilangan sebagian besar jalur saya. Saya harap ini membantu.
sumber
setx /m
truncates tradisional ke 1048 karakter :(. Anda juga dapat mengedit path dalam editor teks dan cukup lakukan[Environment]::SetEnvironmentVariable("Path", '\my\new;path1', "Machine")
. Anda akan memerlukan admin shell.Selain jawaban Swapnil, perhatikan bahwa Anda dapat memodifikasi panjang maksimum variabel Path - yang jika tidak dibatasi hingga 2048 karakter (sementara satu jalur memiliki batas historis 206 karakter). Di Windows 10, Anda mencapai ini dengan menetapkan
LongPathsEnabled
kunci registri ke 1, yang dapat ditemukan di sini:Untuk mengakses editor registri:,
Windows Key+R
ketikRegedit
.Sumber: https://superuser.com/a/1119980
Lihat juga jawaban SuperUser ini: https://superuser.com/a/1119980/327009
Mengatasi komentar di bawah ini: kesalahan "Variabel lingkungan terlalu besar" terkait dengan seluruh variabel, bukan jalur tunggal yang sedang ditambahkan.
sumber
Terlambat tetapi saya mencari sesuatu yang serupa dan berakhir di sini. Saya mengubah semua jalur ke variabel untuk file program dan data program (yang ini menyimpan seperti 1 karakter meskipun tidak penting).
Untuk sesuatu seperti nodejs, saya mengubah jalur normal
C: \ Program Files \ nodejs \
untuk
% ProgramFiles% \ nodejs \
Ini dapat dilakukan dengan "C: \ Program Files (x86) \" juga menggunakan "% ProgramFiles (x86)% \"
Itu menyelamatkan saya beberapa karakter tetapi cukup sehingga berhenti mengeluh saya merasa.
sumber
Saya menemukan Anda dapat melakukannya melalui PowerShell.
Jadi saya mengambil PATH sistem yang sudah ada, disisipkan ke notepad, menambahkan hal baru saya, lalu menempel ke bit "C: \ Program Files" di atas. Jalur diperbarui. Selesai
sumber
Coba modifikasi oleh
regedit
, dalam kasus saya ini berfungsi ketika panjangnya lebih dari 3000.Tekan
Win + R
dan masukregedit
untuk membuka regedit. Pergi keComputer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
, dan ubah nilaiPath
ke jalur Anda. Dan nyalakan kembali komputer, itu seharusnya bekerja.sumber
Penanganan masalah:
Silakan restart sistem. Setelah memulai ulang sistem, PATH tidak lagi kosong, tetapi dapat terpotong hingga 2047 (4095) karakter Jika sistem restart tidak membantu, tolong:
Luncurkan c: \ windows \ system32 \ regedit.exe Buka kumpulan registri "HKLM \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Environment" Bersihkan direktori yang tidak perlu dari tombol "Path" Restart sistem
Catatan: Dalam beberapa kasus luar biasa jika sistem tidak dapat memulai, silakan:
Masuk dalam mode aman Buka shell prompt perintah dan ketik: reg tambahkan "HKLM \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Environment" / v Path / t REG_EXPAND_SZ / d ^% SystemRoot ^% \ system32; ^% SystemRoot ^% / f
Untuk lebih jelasnya: https://software.intel.com/en-us/articles/limitation-to-the-length-of-the-system-path-variable
sumber
4095
?Selain metode lain (misalnya Powershell), saya menemukan GUI yang bagus, "Editor Lingkungan Cepat" yang dapat menangani nilai teks yang lebih besar.
https://www.rapidee.com/en/download
sumber
Rupanya Rapid Environment Editor akan melakukan ini untuk Anda (dari @shatil_shah jawab), tetapi Anda juga dapat mempersingkat jalur ke versi "8dot3" mereka. Anda akan mendapatkan banyak jarak tempuh hanya dengan dua penggantian ini:
Jika Anda menyalin jalur Anda saat ini ke Notepad pertama-tama cari dan ganti
C:\Program Files (x86)
kemudianC:\Progam Files
.sumber
Workarround. Gunakan Edit Teks dan edit PATH Anda dalam Editor teks
sumber
Edit Text
, alih-alih membuka beberapa file.