microsoft/MSBuildLocator

MsBuildLocator.RegisterDefaults() fails with .NET 7 Preview 7 sdk

deepchoudhery opened this issue · 3 comments

Get the following error message:

No instances of MSBuild could be detected.\r\nTry calling RegisterInstance or RegisterMSBuildPath to manually register one. at Microsoft.Build.Locator.MSBuildLocator.RegisterDefaults()

Used MSBuildLocator.QueryVisualStudioInstances() to see if any visual studio instances were found but empty.

Not an issue with previous .NET 7 preview sdks and also not an issue if another SDK is installed (.NET 7 Preview or .NET 6). Only an issue if this newest .NET 7 Preview 7 sdk is used standalone.

Also tried to pass the MSBuild.exe path using MSBuildLocator.RegisterMSBuildPath and passed the MSBuild.exe from the installed solo VS instance and that seemed to have no issues.

dotnet --info
.NET SDK:
 Version:   7.0.100-preview.7.22370.3
 Commit:    dbdda95142

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.22000
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\7.0.100-preview.7.22370.3\

Host:
  Version:      7.0.0-preview.7.22369.4
  Architecture: x64
  Commit:       db5d4dfd16

.NET SDKs installed:
  7.0.100-preview.7.22370.3 [C:\Program Files\dotnet\sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 6.0.7 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 7.0.0-preview.7.22369.8 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 6.0.7 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 7.0.0-preview.7.22369.4 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.WindowsDesktop.App 6.0.7 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 7.0.0-preview.7.22369.18 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

Other architectures found:
  x86   [C:\Program Files (x86)\dotnet]

Environment variables:
  Not set

global.json file:
  C:\scaffolding\global.json

Learn more:
  https://aka.ms/dotnet/info

Download .NET:
  https://aka.ms/dotnet/download

Used in the dotnet/Scaffolding codebase here

You only have a .NET 7 SDK installed, and it can't be used by an app running on the .NET 6 runtime, because the SDK uses features of the new runtime. You may wish to configure your app for major-version runtime rollforward so that it runs on the highest runtime version available to avoid this, or target your app to net7.0.

Hmm reread your comment. Will investigate a lil bit and get back to you.

Closing. Makes sense but since removed dependency for MsBuildLocator.