windows 如何从powershell运行dotnet new?

brjng4g3  于 2023-01-06  发布在  Windows
关注(0)|答案(1)|浏览(280)

我已经通过下载并运行安装了dotnet-sdk-7.0.101-win-x86.exe。如果我再次尝试运行它,它会转到另一个屏幕,我可以在那里修改它。
我尝试按照Udemy课程的说明创建一个控制台应用程序,但是我故意做一些不同的事情。在课程中,讲师解释说要在他的用户目录下设置所有内容(在Windows中)。我不想这样做。
我不想这样做的原因是我已经有一个文件夹,里面有我的工作资料,我想让这个文件夹也能用于我的工作资料。对我来说,这个文件夹是C:\SourceCode\(什么的)。我有一个名为GitHub的文件夹,里面有我下载用于工作的所有存储库,还有一个名为“Local”的文件夹,我正在使用它来学习。所以,这是我尝试创建一个新的HelloWorld控制台应用程序的输出:

PS C:\SourceCode\Local\dotnet-course-code> dotnet new -n HelloWorld
The command could not be loaded, possibly because:
  * You intended to execute a .NET application:
      The application 'new' does not exist.
  * You intended to execute a .NET SDK command:
      No .NET SDKs were found.

Download a .NET SDK:
https://aka.ms/dotnet-download

Learn about SDK resolution:
https://aka.ms/dotnet/sdk-not-found
PS C:\SourceCode\Local\dotnet-course-code>

我做了一些谷歌搜索已经试图解决这个问题,一个有见地的职位让我运行以下命令,我相信这证明了dotnet的东西安装(但我可能是错的)

PS C:\SourceCode\Local\dotnet-course-code> Get-Command dotnet |Format-List

Name            : dotnet.exe
CommandType     : Application
Definition      : C:\Program Files\dotnet\dotnet.exe
Extension       : .exe
Path            : C:\Program Files\dotnet\dotnet.exe
FileVersionInfo : File:             C:\Program Files\dotnet\dotnet.exe
                  InternalName:     .NET Host
                  OriginalFilename: .NET Host
                  FileVersion:      6,0,922,41905 @Commit: 163a63591cf9e9b682063cf3995948c2b885a042
                  FileDescription:  .NET Host
                  Product:          Microsoft® .NET Framework
                  ProductVersion:   6.0.9 @Commit: 163a63591cf9e9b682063cf3995948c2b885a042
                  Debug:            False
                  Patched:          False
                  PreRelease:       False
                  PrivateBuild:     False
                  SpecialBuild:     False
                  Language:         English (United States)

我想知道为什么这不像预期的那样工作。注意这是在一个全新的机器上运行windows 11,这些命令正在powershell中运行。

js81xvg6

js81xvg61#

这是错误消息的关键部分:

* You intended to execute a .NET SDK command:
      No .NET SDKs were found.

为了创建源代码 * 项目 *,您需要下载.NET SDK
单独存在dotnet.exe * 并不 * 意味着安装了 SDK,因为只可能安装 * 运行时 *。
如果运行dotnet --info,您将看到安装了哪些SDK和运行时。
如果没有列出SDK,您必须安装一个。

  • 更新 *:正如您所注意到的,问题是您意外地创建了 * 并行 * 安装(一个x86版本与一个x64版本),而您尝试使用的安装缺少SDK。

一旦安装了一个,* 如果 * 您还指定了一个项目 * 类型 * which is required,如topsail所指出的,您的命令应该可以工作;例如,在子文件夹HelloWorld中创建 console 应用程序:

# OK, once an SDK is installed.
dotnet new console -n HelloWorld

相关问题