我创建了一个名为 MyHelpers 的 ASP.NET Core RC2 类库,并在 project.json 上获得了以下内容:
"dependencies": {
"NETStandard.Library": "1.5.0-rc2-24027",
},
"frameworks": {
"netstandard1.5": {
"imports": [
"dnxcore50",
"portable-net452+win81"
]
}
}
然后我创建了一个用于测试的 ASP.NET Core RC2 类库,命名为 MyHelpersTests,并在 project.json 中获得以下内容:
"testRunner": "xunit",
"dependencies": {
"NETStandard.Library": "1.5.0-rc2-24027",
"xunit": "2.2.0-beta1-build3239",
"dotnet-test-xunit": "1.0.0-rc2-build10015",
"MyHelpers": "1.0.0"
},
"frameworks": {
"netstandard1.5": {
"imports": [
"dnxcore50",
"portable-net452+win81"
]
}
}
当我编译它时,我得到错误:
Package dotnet-test-xunit 1.0.0-rc2-build10015 is not compatible with netstandard1.5 (.NETStandard,Version=v1.5). Package dotnet-test-xunit 1.0.0-rc2-build10015 supports:
- net451(.NETFramework,Version=v4.5.1) - netcoreapp1.0(.NETCoreApp,Version=v1.0)一个或多个包与.NETStandard,Version=v1.5 不兼容。
我错过了什么?
3 回答
实际上你的测试项目不能是
netstandard1.5
库而是netcoreapp1.0
应用程序(如错误消息和 xunit 介绍页面中所述)。测试程序集需要可执行并需要 Main()(由 xunit 提供)。netstandard1.5
是netcoreapp1.0
的子集。我认为你还必须将你的依赖关系改为
"Microsoft.NETCore.App":"1.0.0-rc2-3002702"
。今天这对我有用,整个配置看起来像这样......
我认为问题是你缺少便携式 net45 导入。
这是我的 project.json: