Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Note
dotnetup berada dalam pratinjau publik. Fitur dan perilakunya mungkin berubah sebelum ketersediaan umum.
Dotnetup dapat mengonfigurasi lingkungan untuk membuat SDK dan Runtime .NET yang diinstalnya tersedia. Ini dilakukan dengan mengatur variabel lingkungan berikut:
-
PATH: Membuat perintahdotnettersedia pada baris perintah. Alat dev seperti Visual Studio atau C# Dev Kit juga menggunakanPATHuntuk menemukan SDK dan Runtime .NET. -
DOTNET_ROOT: Memberi tahu executable aplikasi yang bergantung pada kerangka kerja tempat untuk menemukan penginstalan .NET dan runtime bersama.
Dotnetup mendukung berbagai mode akses yang mengontrol tempat variabel lingkungan ini diatur. Anda dapat memilih mode akses dalam penyiapan awal dotnetup atau nanti dengan perintah dotnetup env.
| Mode Akses | Behavior |
|---|---|
none |
Tidak mengubah variabel lingkungan ini. Jalankan .NET dengan dotnetup dotnet. |
shell |
Memodifikasi profil shell untuk mengatur variabel lingkungan ini. Proses dimulai dari shell tersebut menggunakan .NET SDK dan Runtime yang diinstal oleh dotnetup. |
everywhere |
Memodifikasi sistem PATH dan mengatur variabel lingkungan DOTNET_ROOT tingkat pengguna. Hanya tersedia di Windows. |
Secara default, dotnetup juga menambahkan dirinya ke PATH, terlepas dari pengaturan mode akses. Ini dapat dikontrol dengan dotnetup env set --dotnetup-on-path <true|false>.
Pertimbangan untuk mode Everywhere
mode Everywhere adalah default di Windows sehingga SDK dan runtime yang diinstal oleh dotnetup akan tersedia dari alat dev dan dari terminal yang menggunakan cmd sebagai shell. Namun, ada beberapa hal yang perlu diperhatikan, terutama terkait cara interaksinya dengan instalasi SDK dan Runtime .NET yang berlaku untuk seluruh sistem.
Instalasi .NET untuk seluruh komputer terletak di bawah folder Program Files. Mereka dapat diinstal dengan alat penginstal yang dapat diunduh dari halaman unduhan .NET. Visual Studio menginstal .NET SDK dan Runtime untuk seluruh komputer, dan alat penginstal untuk aplikasi yang bergantung pada kerangka kerja juga dapat menginstal Runtime .NET yang diperlukan aplikasi tersebut di lokasi untuk seluruh komputer.
Dalam mode everywhere, akar penginstalan .NET lokal pengguna yang dikelola dotnetup akan mengambil alih akar penginstalan .NET seluruh sistem. Ini berarti bahwa .NET SDK dan Runtime yang diinstal dalam Program Files tidak akan tersedia. Proyek yang bergantung pada SDK tersebut akan gagal dibangun jika SDK yang cocok tidak diinstal. Jika runtime yang cocok tidak diinstal, aplikasi yang bergantung pada framework akan gagal diluncurkan dengan kesalahan yang mengatakan "Anda harus menginstal atau memperbarui .NET untuk menjalankan aplikasi ini."
Untuk menghindari kegagalan ini, penyiapan dotnetup awal menawarkan opsi untuk memigrasikan penginstalan .NET SDK dan Runtime yang sudah ada di sistem. Anda juga dapat memigrasikannya secara eksplisit dengan menjalankan dotnetup sdk install --migrate-from-system untuk SDK atau dotnetup runtime install --migrate-from-system untuk runtime.
Mengaktifkan atau menonaktifkan mode Everywhere memerlukan modifikasi PATH sistem, yang memerlukan elevasi (yaitu persetujuan prompt UAC, atau "Jalankan sebagai Administrator"). Ini karena penginstal untuk seluruh sistem bagi .NET menambahkan root penginstalan .NET di Program Files ke PATH sistem, dan PATH sistem lebih diutamakan daripada PATH tingkat pengguna saat menemukan perintah. Jadi dotnetup perlu memodifikasi PATH sistem agar root penginstalan .NET dotnetup diprioritaskan.
Karena PATH sistem berlaku untuk semua pengguna, perubahan ini dapat berdampak pada pengguna lain. Jalur yang ditambahkan ke PATH sistem secara default berada di bawah folder AppData lokal pengguna. Ini biasanya tidak dapat diakses oleh pengguna lain sehingga tidak akan memengaruhi versi dotnet mana yang dipilih. Namun, proses yang dijalankan dengan hak Administrator akan dapat membaca jalur, dan dapat tanpa diduga memuat .NET SDK atau Runtime dari pengguna lain.
Shell yang didukung
Dukungan pembuatan profil dan skrip:
- Bash
- Z shell
- Ikan
- Pwsh (PowerShell Core)
- PowerShell
Jika Anda tidak memberikan --shell, dotnetup mendeteksi shell saat ini. Gunakan shell eksplisit saat deteksi tidak tersedia atau saat Anda ingin memperbarui profil lain:
dotnetup env set shell --shell zsh
Status tersimpan dan yang diamati
dotnetup.config.json menyimpan mode akses yang dipilih dan apakah dotnetup harus berada di PATH.
dotnetup env show membandingkan konfigurasi tersebut dengan profil dan lingkungan saat ini. Ini melaporkan penyimpangan jika keadaan yang diamati tidak cocok.
Terapkan kembali konfigurasi tersimpan untuk memperbaiki penyimpangan:
dotnetup env set
Terminal saat ini
Perubahan lingkungan profil dan Windows tidak menimpa lingkungan proses saat ini. Buka terminal baru, muat profil yang dimodifikasi, atau evaluasi skrip yang dihasilkan.
Untuk shell Bash atau Z:
eval "$(dotnetup env script)"
Untuk PowerShell:
dotnetup env script --shell pwsh | Invoke-Expression
env script menggunakan konfigurasi yang tersimpan saat Anda tidak meneruskan opsi pilihan. Gunakan --dotnet, --dotnetup, atau keduanya untuk memilih konten yang dihasilkan.
Hapus konfigurasi lingkungan
Hapus semua konfigurasi lingkungan terkelola:
dotnetup env clear
Perintah ini setara dengan:
dotnetup env set none --dotnetup-on-path false
Ini tidak menghapus instalasi SDK atau runtime.