【问题标题】:Using the latest CLI with .NET Core dotnet将最新的 CLI 与 .NET Core dotnet 结合使用
【发布时间】:2017-04-10 14:45:27
【问题描述】:

我正在尝试使用最新的 .net 工具。

我已按照链接安装 .NET core 1.0.1 和 1.0.0 SDK(作为一个)from the .NET Core landing page

这将安装 .NET Core SDK 1.0.1:

如果我导航到 C:\Program Files\dotnet\sdk:

这里只有 1.0.1 .net core 版本:

编辑: VS 2015 .NET Core 工具的旧安装似乎安装了旧预览版本,有趣的是,C:\Program Files (x86)\dotnet\sdk 中的 x86 版本我认为这是它实际使用的版本:

在 Microsoft.NETCore.App 中:

我可以看到安装了最新版本以及旧版本(我认为这可能是 VS 2015 更新附带的?)。

但是,当我尝试关注 the documentation 时,我很快就会发现问题。

dotnet new webapi

结果为@​​987654335@。创建 dotnet new 会创建 project.json 而不是我期待的 .csproj

dotnet --version 报告:1.0.0-preview2-003133

所以它使用的是旧的 CLI 工具。但是,当我尝试在空的新项目目录中使用以下内容强制使用 global.json 的最新版本时:

{
"sdk": {
    "version": "1.0.1"
  }
}

我仍然收到1.0.0-preview2-003133 的举报。

如何使用最新的工具?

【问题讨论】:

  • 在 SDK 1.0.1 的安装过程中似乎出了点问题。我有一个安装了几个 SDK 的类似设置,但是在安装了 SDK 1.0.1 后,它成为默认设置,如果我在 cmd.exe 中键入“dotnet --version”(不在 dotnet 项目文件夹中),它肯定会显示 1.0 .1。你在这里有什么 "C:\Program Files\dotnet\shared\Microsoft.NETCore.App" ?你能看到相关的运行时 LTS 1.0.4 和 FTS 1.1.1 吗?您可以考虑卸载以前的 SDK 吗?修理新的?
  • 已请求添加。我可以在程序文件/shard/.NET Core App 文件夹中看到 1.0.1、1.0.4 和 1.1.0。有趣的是,有一个不同的程序文件(x86)版本。我认为这是去年 10 月作为 VS 2015 webtools 的一部分安装的。
  • 设法通过卸载旧工具来修复它。

标签: asp.net-core


【解决方案1】:

您需要 .net core 1.1 才能获得 csproj 风格的项目,这需要 Visual Studio 2017 而不是 2015。

【讨论】:

  • 我只是想使用命令行 CLI,根本不需要 Visual Studio。 SDK还包括1.1(来自下载页面:.NET Core SDK(包含.NET Core 1.0和1.1))
  • 好的,因为你在问题中谈论的是 1.0.1,而不是 1.1,所以有点令人困惑
  • 您从下载页面下载了 exe,而不是“NET Core tools Preview 2 for Visual Studio 2015”?从您的版本号来看,听起来您确实在使用 2015 年的工具。
  • 我认为问题在于 2015 工具是几个月前安装的,但我不想在新项目中使用它们。我已经从下载页面安装了最新的 .NET 工具,但它默认使用旧的 VS 2015 工具(我现在无法删除,因为它需要原始 EXE 而你似乎无法下载它)我想1.0.1 是最新的 SDK 工具(我不确定 1.1 是否存在?1.0.1 是我下载的,请参阅安装程序图像)
  • 是的,旧的 VS 2015 工具确实是问题所在,感谢您将我指向它们。我假设 CLI 的两个版本可以共存(这似乎是 global.json 的重点!)
【解决方案2】:

可能您的项目尚未从 project.json 迁移到 *.csproj。

您可以运行 dotnet migrate 将您的项目/解决方案迁移到新/旧 Csproj。新的 Dotnet sdk 仅适用于 csproj 文件。

【讨论】:

  • 我没有要迁移的项目,我只是尝试使用最新的 CLI 创建一个新项目 - 但无法访问最新的 CLI
【解决方案3】:

好的,问题在于较旧的 VS 2015 工具似乎优先于较新安装的工具。我设法卸载了它们using this

现在 1.0.1 是使用的默认 CLI,它正在创建最新的应用程序。

感谢 cmets 中的每个人的帮助以及其他为我指明正确方向的答案。

【讨论】:

    猜你喜欢
    • 2019-03-28
    • 2018-11-08
    • 2021-11-24
    • 2020-07-14
    • 2021-09-15
    • 2021-09-19
    • 2017-05-10
    • 2017-10-11
    • 2020-08-29
    相关资源
    最近更新 更多