' dotnet xunit'在新的xUnit项目中没有在Linux上工作

时间:2018-03-16 15:05:54

标签: jenkins .net-core xunit

我创建了一个新的xUnit项目,只需要一个非常简单的(传递)测试。

我的机器上有最新版本的所有内容,但作为开发人员,我还有许多以前的版本。

如果我在本地运行' dotnet xunit'我得到了(现在可能很有名):

    The specified framework version '2.0' could not be parsed
The specified framework 'Microsoft.NETCore.App', version '2.0' was not found.
  - Check application dependencies and target a framework version installed at:
      \
  - Alternatively, install the framework version '2.0'.

我可以通过此调用再次在本地解决此问题(可在任何地方使用Google搜索):

dotnet xunit --fx-version 2.0.3

一切都好。

现在我转到一个Linux虚拟机,它充当Jenkins构建过程的代理,这些调用都不起作用。
我怀疑这是因为作为一个新的虚拟机,我只安装了SDK的最新版本,因此无法找到'后备'版本2.0.3,或类似的东西。
在这种情况下,我该怎么办? 提前谢谢。

注意:linux机器上安装的.net核心sdk版本是2.1.101,如果我试试

dotnet xunit --fx-version 2.1.101

我在上面获得了相同的错误消息,但当然是2.1.101而不是2.0。

1 个答案:

答案 0 :(得分:0)

您应该将框架版本传递到--fx-version,而不是SDK。您可以从dotnet找到安装dotnet --info的位置,然后列出所有框架版本

$ dotnet --info | grep 'Base Path'
Base Path:   /usr/share/dotnet/sdk/2.1.4/

$ ls /usr/share/dotnet/shared/Microsoft.NETCore.App/
1.0.3  1.0.4  1.0.5  1.1.1  1.1.2  2.0.0  2.0.3  2.0.5