我创建了一个新的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。
答案 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