user9057272
user9057272

Reputation: 457

"Did you mean to run dotnet SDK commands? Please install dotnetsdk" in windows command prompt

I have just installed dot net core sdk and runtime (2.2.1) on my system viz. a Windows Server 2012R2. I am trying to create a console app using the command prompt using

dotnet new console

but it says

Did you mean to run dotnet SDK commands? Please install dotnetsdk

Is there any other configurations needed. The Environment path variable also contains the following folder C:\Program Files\dotnet. I have not installed VS2017. Was trying to use VS Code

Upvotes: 7

Views: 20512

Answers (3)

Sibeesh Venu
Sibeesh Venu

Reputation: 21779

I was getting the same problem when I was trying to dockerize my .Net Core 2.2 Web API solution.

enter image description here

I was using the below images to build the images. Please note that place where the sdk(mcr.microsoft.com/dotnet/core/sdk:2.2) is used.

FROM mcr.microsoft.com/dotnet/core/sdk:2.2 AS base
WORKDIR /app
EXPOSE 5051
FROM mcr.microsoft.com/dotnet/core/aspnet:2.2 AS build

Apparently the order I was used is wrong, So I changed it as preceding .

FROM mcr.microsoft.com/dotnet/core/aspnet:2.2 AS base
WORKDIR /app
EXPOSE 5051
FROM mcr.microsoft.com/dotnet/core/sdk:2.2 AS build
WORKDIR /src
........

RUN dotnet restore "Api.csproj"
WORKDIR "/src/Api"
COPY . .
WORKDIR "/src/Api"
RUN dotnet build "Api.csproj" -c Release -o /app

FROM build AS publish
RUN dotnet publish "Api.csproj" -c Release -o /app

FROM base AS final
WORKDIR /app
COPY --from=publish /app .

ENV ASPNETCORE_ENVIRONMENT DevStaging
ENV ASPNETCORE_URLS=http://+:5051

ENTRYPOINT ["dotnet", "Api.dll"]

This fixed my issue. Hope it helps.

Upvotes: 3

In my case somehow I also had a C:\Program Files (x86)\dotnet with a runtime version there which was picked from Path instead of the SDK in C:\Program Files\dotnet

This was causing exactly the same error message + it was breaking solutions in Visual Studio (but not in Rider)

Upvotes: 9

BigMuzzy
BigMuzzy

Reputation: 138

Please, make sure you've installed SDK not just runtime.

enter image description here

UPDATE

This is what you will see on the server without SDK installed if you run dotnet.exe --list-sdks command

enter image description here

And this with SDK installed:

enter image description here

One needs to install SDK on a development machine to be able to build and run applications and runtime (usually on an application server or user machine) to be able to just run built applications.

Upvotes: 5

Related Questions