无法在Linux上将App升级到.net Core 1.0.1

时间:2016-09-14 21:27:18

标签: .net-core

在project.json中将我的应用程序升级到版本1.0.1之后:

"Microsoft.NETCore.App": {
  "type": "platform",
  "version": "1.0.1"
},

这适用于Windows,但不适用于Linux。 在Linux下我得到这个错误:

Project BackendGems (.NETCoreApp,Version=v1.0) was previously compiled. Skipping compilation.
Project test (.NETCoreApp,Version=v1.0) was previously compiled. Skipping compilation.
The specified framework 'Microsoft.NETCore.App', version '1.0.1' was not found.
  - Check application dependencies and target a framework version installed at:
      /opt/dotnet_cli/shared/Microsoft.NETCore.App
  - The following versions are installed:
      1.0.0
  - Alternatively, install the framework version '1.0.1'.
SUMMARY: Total: 1 targets, Passed: 0, Failed: 1.

我尝试删除nuget缓存,并确保我拥有相同的SDK版本1.0.0-preview2-003121

可能出现什么问题?

1 个答案:

答案 0 :(得分:5)

您对project.json所做的更改会强制您的应用在运行时版本> = v1.0.1上运行,否则会失败。

dotnet restore更新依赖项,但不更新运行时。

因此,您只需在/opt/dotnet_cli/shared/Microsoft.NETCore.App中安装1.0.1运行时作为错误消息说明。

每个Linux发行版在.NET站点上都有不同的安装说明,因此您可以执行类似“apt-get install dotnet-dev-1.0.1”的操作

但对于Debian,我必须手动完成:

  

$ wget https://go.microsoft.com/fwlink/?LinkID=825887 -O dotnet-1.0.1.tar.gz

  • /opt/dotnet_cli/shared/Microsoft.NETCore.App
  • 上恢复
  

tar zxvf dotnet-1.0.1.tar.gz -C /opt/dotnet_cli/

现在dotnet run按预期工作。

编辑:看起来MS正在更新下载页面,因此您现在可以找到标记为.NET Core binaries only的文件(不提及1.0.1)。但该文件仍然是相同的。