diff --git a/src/NuGetSdkResolver/NuGetSdkResolver.cs b/src/NuGetSdkResolver/NuGetSdkResolver.cs index 6a127fff502..1cf9d5df9af 100644 --- a/src/NuGetSdkResolver/NuGetSdkResolver.cs +++ b/src/NuGetSdkResolver/NuGetSdkResolver.cs @@ -203,8 +203,15 @@ private static bool TryGetMSBuildSdkPackageInfo(FallbackPackagePathResolver fall return false; } - // Get the installed path and add the expected "Sdk" folder + // Get the installed path and add the expected "Sdk" folder. Windows file systems are not case sensitive installedPath = Path.Combine(packageInfo.PathResolver.GetInstallPath(packageInfo.Id, packageInfo.Version), "Sdk"); + + if (!NativeMethodsShared.IsWindows && !Directory.Exists(installedPath)) + { + // Fall back to lower case "sdk" folder in case the file system is case sensitive + installedPath = Path.Combine(packageInfo.PathResolver.GetInstallPath(packageInfo.Id, packageInfo.Version), "sdk"); + } + installedVersion = packageInfo.Version.ToString(); return true;