Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Note
dotnetup genel önizleme aşamasındadır. Özellikleri ve davranışı genel kullanılabilirlik öncesinde değişebilir.
Bu makalede yaygın dotnetup sorunlar ve bunların nasıl düzeltileceğini açıklanmaktadır.
Tanılama bilgilerini toplama
Bir sorunu gidermeden önce şu bilgileri toplayın:
dotnetupsürümü, mimariyi, çalışma zamanı tanımlayıcısını ve doğrulanmış yüklemeleri gösterin:dotnetup --infoİzlenen kurulum özelliklerini ve yüklemelerini gösterin ve disk üzerindeki dosyaları doğrulayın:
dotnetup listDepolanan ortam yapılandırmasını geçerli ortamla karşılaştırın:
dotnetup env showBaşarısız olan komutu ayrıntılı çıkışla yeniden çalıştırın. Örneğin:
dotnetup sdk install 10.0 --verbosity detailed
Projeler derlenmiyor veya uygulamalar kurulumdan sonra başlatılamıyor
Belirti: Windows'ta dotnetup modunda everywhere ayarladıktan sonra, daha önce derlenen projeler artık derlenemiyor. Veya çerçeveye bağımlı uygulamalar şu hatayı gösterir:
You must install or update .NET to run this application.
Neden:everywhere modunda, dotnetup tarafından yönetilen yükleme, Program Dosyaları'ndaki makine genelindeki yüklemeye göre önceliklidir. Yalnızca makine genelindeki yüklemede bulunan SDK'lar ve çalışma zamanları kullanılamaz.
Çözüm: Makine genelindeki SDK'ları ve çalışma zamanlarını dotnetup tarafından yönetilen yüklemeye geçirin:
dotnetup sdk install --migrate-from-system
dotnetup runtime install --migrate-from-system
Ya da none veya shell erişim moduna geçin. Daha fazla bilgi için bkz. Her yerde moduyla ilgili dikkat edilmesi gerekenler.
dotnet, dotnetup tarafından yönetilen yüklemeyi kullanmıyor
Belirti: Terminalinizdeki dotnet komutu, dotnetup tarafından yüklenen SDK'ları kullanmaz.
Neden: Terminal, dotnetup ortamı değiştirmeden önce açıktı veya ortam yapılandırması saklanan yapılandırmayla eşleşmiyor.
Çözüm:
Yeni bir terminal açın. Kabuk profilinde veya Windows ortam değişkenlerinde yapılan değişiklikler zaten açık olan terminalleri etkilemez.
dotnetup env show'i çalıştırın. Kayma bildiriyorsa, depolanan yapılandırmayı yeniden uygulamak içindotnetup env setçalıştırın.Yalnızca geçerli terminali yapılandırmak için
dotnetup env scriptçıktısını değerlendirin. Örneğin, Bash veya zsh'de:eval "$(dotnetup env script)"PowerShell'de:
dotnetup env script --shell pwsh | Invoke-Expression
Daha fazla bilgi için bkz. Dotnetup ortamını yönetme.
Yükleme yolu zaten takip edilmeyen bir yükleme içeriyor
Belirti: Yükleme komutu şu hatayla başarısız oluyor:
The install path '<path>' already contains a .NET installation that is not tracked by dotnetup. To avoid conflicts, use a different install path, remove the existing installation first, or use the --untracked option to install without tracking.
Neden:dotnetup izlediği dosyaları, izlemediği bir .NET yüklemesi içeren bir klasöre yüklemez. Bu denetim, dotnetup dosyalarını başka bir aracın sahip olduğu dosyalarla karıştırmasını engeller.
Çözüm: Aşağıdakilerden birini yapın:
-
--install-pathseçeneğiyle farklı bir klasör seçin. - Var olan kurulumu klasörden kaldırın.
- Klasörün sahibi başka bir araçsa
--untrackedseçeneğini kullanın.dotnetupizlenmeyen dosyaları listelemez, güncelleştirmez veya kaldırmaz.
Daha fazla bilgi için bkz. Özel yükleme köklerini yönetme.
dotnet yürütülebilir dosyası kullanılıyor
Belirti: Windows'ta bir yükleme komutu şu iletiye benzer bir uyarı gösterir:
Warning: Could not update dotnet executable at '<path>' - it is currently in use by another process. Close all running .NET applications and try again. The existing muxer will be retained. ...
Neden: Çalışan bir işlem dotnetup yürütülebilir dosyasını kullandığından, dotnet onu değiştiremez. Yükleme, mevcut dotnet yürütülebilir dosyayla devam eder.
Yeni bir çalışma zamanı dotnet daha yeni bir yürütülebilir dosya gerektirebilir.
Çözüm: Çalışan tüm .NET uygulamalarını, IDE'leri ve derleme sunucularını kapatın. Ardından yükleme komutunu yeniden çalıştırın. Komutun uyarıyla devam etmek yerine başarısız olmasını sağlamak için --require-muxer-update seçeneğini kullanın.
Başka bir dotnetup işlemi çalışıyor
Belirti: Komut bu iletiyi gösterir ve bekler:
Another dotnetup process is running. Waiting for it to finish...
Neden:dotnetup paylaşılan kurulum durumundaki değişiklikleri serileştirir. Başka bir dotnetup komut da aynı durumu değiştiriyor.
Çözüm: Diğer komutun bitmesini bekleyin. Başka hiçbir dotnetup işlem çalışmıyorsa, yanıt vermeyi durduran dotnetup işlemleri arayın ve bunları sonlandırın.
Manifest bozuk
Belirti: Komut şu hatayla başarısız oluyor:
The dotnetup manifest at <path> is corrupt. Consider deleting it and re-running the install.
İleti, dosyanın dotnetup dışında değiştirildiğini de söyleyebilir.
Neden:dotnetup_manifest.json dosya geçerli değil. Dosya başka bir işlem veya elle yapılan bir düzenleme nedeniyle değişmiş olabilir.
Çözüm: Bildirim dosyasını ve ilgili .sha256 dosyasını dotnetup veri dizininden silin. Ardından ihtiyacınız olan SDK'ları ve çalışma zamanlarını yeniden yükleyin. Manifest artık mevcut yükleme kökünü izlemediğinden, önce bu klasörü de silmeniz gerekebilir. Veri dizininin konumu için bkz. Dotnetup'ı güncelleştirme veya kaldırma.
Note
Manifest dosyasını düzenlemeyin. İzlenen durumu değiştirmek için dotnetup komutlarını kullanın.
Yapılandırma dosyası bozuk
Belirti: Şu komut uyarısı görüntülenir:
Warning: The dotnetup config file at <path> appears to be corrupted and could not be read: ...
Neden: Dosya dotnetup.config.json geçerli değil.
dotnetup dosyayı yoksayar.
Çözüm: İstediğiniz erişim moduyla çalıştırın dotnetup env set veya yeniden çalıştırın dotnetup init . Bu komutlar yeni bir yapılandırma oluşturur.
Kabuk profili hatalı biçimlendirilmiş dotnetup bloğu içeriyor
Belirti:env komutu, şu iletiye benzer bir hatayla başarısız oluyor:
The shell profile '<path>' contains a malformed dotnetup block: '<begin marker>' does not have a matching '<end marker>'. Remove or repair the block manually and try again.
Neden:dotnetup komutu, kabuk profiline eklediği satırları başlangıç ve bitiş açıklamalarıyla işaretler. Bu açıklamalardan biri eksik.
Çözüm: Kabuk profilini bir metin düzenleyicisinde açın. Tamamlanmamış dotnetup bloğunu kaldırın veya eksik işaretçiyi ekleyin. Ardından komutu yeniden çalıştırın.
Yükseltme iptal edildi
Belirti: Windows'ta, everywhere modunu açan veya kapatan bir komut şu iletiyi gösterir:
Elevation was cancelled. The system PATH was not modified.
Neden: Sistemde PATH yapılan değişiklikler için yönetici yetkisi gerekir. Kullanıcı Hesabı Denetimi (UAC) istemi iptal edildi.
Çözüm: Komutu yeniden çalıştırın ve UAC istemini onaylayın. Veya yükseltme gerektirmeyen none veya shell erişim modunu seçin.
Yayın manifestosunun süresi doldu
Belirti: Bir yükleme veya güncelleştirme, sürüm bildirimi doğrulaması sırasında ExpiredNow hata koduyla başarısız olur.
Neden: Geçerli sistem saati manifest'in sona erme zamanında veya sonrasındadır. Manifestin süresi dolmuş olabilir veya sistem saati yanlış olabilir. Geçerli bir imza süresi dolmuş bir manifesti kabul edilebilir yapmaz.
Çözüm:
- Sisteminizin tarih ve saatini denetleyin. Gerekirse saati düzeltin.
- komutunu yeniden deneyin. Ara sunucu önbelleğe alınmış yayın meta verilerine hizmet verirse, yöneticinizden süresi dolmuş bir manifest sunup sunmadığını denetlemesini isteyin.
- Saat doğruysa ve hata devam ederse, komutun ayrıntılı çıkışıyla ilgili sorunu bildirin.
Manifest dosyasını düzenlemeyin veya süre sonu denetimlerini atlamak için saati değiştirmeyin. Daha fazla bilgi için bkz. Manifest süresinin dolması.
Yükleme bir BT ilkesi tarafından engellendi
Belirti: Günlük veya yayın öncesi derleme yüklemesi, BT ilkesinin kod imzalı indirmeler gerektirdiğini belirten bir iletiyle başarısız olur.
Neden: Yönetici makinede imzalanmamış indirmeleri engelledi.
Çözüm: Yayımlanan bir sürümü yükleyin veya yöneticinizden ilkeyi temizlemesini isteyin. Daha fazla bilgi için bkz. dotnetup indirmeleri nasıl doğrular.
Sorun bildirme
Bu makale sorununuzu çözmezse mevcut dotnetup sorunlarını arayın.
Eşleşme bulamazsanız dotnet/sdk deposundadotnetup sorun şablonuyla yeni bir sorun açın.
--verbosity detailed çıktısını ve dotnetup --info ile başarısız olan komutun çıktısını ekleyin.
Sorular ve öneriler için dotnetup tartışmalarını kullanın.