Aracılığıyla paylaş


NETSDK1045: Geçerli .NET SDK'sı hedef olarak 'daha yeni sürümü' desteklemiyor.

Bu makale şunlar için geçerlidir: ✔️ .NET Core 2.1.100 SDK ve sonraki sürümleri

Derleme araçları bir proje oluşturmak için gereken .NET SDK sürümünü bulamadıklarında bu hata oluşur. Bunun nedeni genellikle bir .NET SDK yükleme veya yapılandırma sorunudur. Tam hata iletisi aşağıdaki örneğe benzer:

NETSDK1045: Geçerli .NET SDK'sı hedef olarak 'daha yeni sürümü' desteklemiyor. Hedef 'eski sürüm' veya daha düşük ya da 'daha yeni sürümü' destekleyen bir .NET SDK sürümü kullanın.

Aşağıdaki bölümlerde bu hatanın olası nedenlerinden bazıları açıklanmaktadır. Her birini denetleyin ve hangisinin sizin için geçerli olduğunu görün. Ortamda veya yapılandırma dosyalarında değişiklik yaparken, değişikliklerinizin etkili olması için komut pencerelerini yeniden başlatmanız, Visual Studio'yu yeniden başlatmanız veya makinenizi yeniden başlatmanız gerekebileceğini unutmayın.

.NET SDK sürümü

Proje dosyasını (.csproj, .vbproj veya .fsproj) açın ve hedef çerçeveyi denetleyin. Bu, uygulamanızın kullanmaya çalıştığı çerçeve sürümüdür.

<TargetFramework>netcoreapp3.0</TargetFramework>

Listelenen .NET sürümünün makineye yüklendiğinden emin olun. Aşağıdaki komutu kullanarak yüklü sürümleri listeleyebilirsiniz (Geliştirici Komut İstemi'ni açın ve şu komutu çalıştırın):

dotnet --list-sdks

x86 veya x64 mimarisi

.NET SDK'sının her sürümü hem x86 hem de x64 mimarisinde kullanılabilir. Proje yanlış mimari için .NET SDK'sını bulmaya çalışıyor olabilir veya projenizin ihtiyaç duyduğu mimari için .NET SDK'sı yüklenmemiş olabilir. İhtiyacınız olan mimari için yükleme klasörlerini denetleyin. Örneğin, Windows'da, .NET SDK'sının x86 sürümü C:\Program Files (x86)\dotnet'te, x64 sürümü ise C:\Program Files\dotnet içinde yüklenir. Makinenizde yüklü olanları algılamayı öğrenmek için bkz . .NET'in zaten yüklü olup olmadığını denetleme ve işletim sisteminizi seçme.

İhtiyacınız olan sürüm yüklü değilse, ihtiyacınız olan sürümü .NET İndirmeleri sayfasında bulun.

Visual Studio sürüm

.NET SDK, Visual Studio 2022 ile yüklenmiş olabilir, bu nedenle Visual Studio'nun daha sonraki bir sürümüne yükseltmek daha sonraki bir .NET SDK yükleyebilir ve bu hatayı çözebilir. Daha fazla bilgi için bkz . Visual Studio'yu güncelleştirme.

Önizleme etkin değil

İstenen .NET SDK sürümünün önizlemesini yüklediyseniz, Visual Studio'da önizlemeleri etkinleştirme seçeneğini de ayarlamanız gerekir. Araçlar>Seçenekleri>Ortam>Önizleme Özellikleri'ne gidin ve .NET Core SDK'sının önizlemelerini kullan seçeneğinin işaretli olduğundan emin olun.

Visual Studio sürüm

Örneğin, .NET Core 3.0 ve üzeri için Visual Studio 2019 gerekir. Projenizi oluşturmak için Visual Studio 2019 sürüm 16.3 veya sonraki bir sürüme yükseltin.

PATH ortam değişkeni

Derleme araçları, .NET derleme araçlarının doğru sürümünü bulmak için PATH ortam değişkenini kullanır. PATH ortam değişkeni eski derleme araçlarının doğrudan yollarını içeriyorsa, bu hata iletisi görüntülenebilir. PATH ortam değişkenindeki .NET araçlarının tek yolunun en üst düzey dotnet klasörüne (örneğin, C:\Program Files\dotnet) olduğundan emin olun. C:\Program Files\dotnet\2.1.0\sdks gibi bir yanlış PATH örneği olabilir.

MSBuildSDKPath ortam değişkeni

MSBuildSDKPath ortam değişkenini denetleyin. Bu isteğe bağlı ortam değişkeni MSBuild tarafından tanınır ve ayarlanırsa varsayılan değeri geçersiz kılar. .NET SDK'sının belirli bir eski sürümüne ayarlanmış olabilir. Ayarlandıysa silmeyi ve projenizi yeniden oluşturmayı deneyin.

global.json dosyası

Projenizdeki ve çözümünüzdeki kök klasörde bir global.json dosyası olup olmadığını denetleyin ve klasör yapısında herhangi bir yerde olabileceğinden dizin zincirini birimin köküne kadar denetleyin. SDK sürümü içeriyorsa düğümü ve tüm alt öğelerini silin sdk veya istenen yeni .NET Core sürümüne güncelleştirin.

{
  "sdk": {
    "version": "2.1.0"
  }
}

global.json dosyası gerekli değildir, bu nedenle düğüm dışında sdk bir şey içermiyorsa dosyanın tamamını silebilirsiniz.

Directory.build.props dosyası

Directory.build.props dosyası, genel özellikleri ayarlayabilen isteğe bağlı bir MSBuild dosyasıdır. Bu dosyaları çözüm klasöründe ve dizin zincirini birimin köküne kadar denetleyin, çünkü bunlar klasör yapısında herhangi bir yerde olabilir. TargetFramework İstediğiniz ayarları geçersiz kılabilir öğeleri veya ayarlarını MSBuildSDKPath arayın.

Ayrıca bkz.