dev*_*r82 11 .net .net-core asp.net-core asp.net-core-1.0
我有许多.NET Core项目的解决方案.我对所有项目进行了NuGet更新,现在当我尝试构建时,我得到以下错误(对于某些项目 - 并非全部):
Can not find runtime target for framework '.NETCoreApp,Version=v1.0' compatible with one of the target runtimes: 'win10-x64, win81-x64, win8-x64, win7-x64'. Possible causes:
1. The project has not been restored or restore failed - run `dotnet restore`
2. The project does not list one of 'win10-x64, win81-x64, win8-x64, win7-x64' in the 'runtimes' section.
3. You may be trying to publish a library, which is not supported. Use `dotnet pack` to distribute libraries.
Run Code Online (Sandbox Code Playgroud)
似乎有帮助的是我在这里找到的帖子无法找到框架的运行时目标.NETCoreApp = v1与其中一个目标运行时兼容
我在失败的项目中添加了以下内容:
"runtimes": {
"win10-x64": { }
}
Run Code Online (Sandbox Code Playgroud)
这似乎解决了这个问题.但我的问题是,为什么这只发生在一些项目上呢?未发出错误的项目在其project.json文件中没有此类运行时定义.
这个运行时定义到底意味着什么?它如何影响我在linux或mac等其他操作系统上运行的能力?
Sha*_*tin 14
这个运行时定义到底意味着什么?
runtimes列出我们的包支持的运行时.列表运行时对于自包含部署是必需的.当部署带来自己的运行时时,它是自包含的.
我们如何知道我们的部署是否是独立的?dependencies列出我们的包依赖的包.这些依赖关系有三种类型.
build 该软件包仅用于构建,不属于部署platform 包将取决于预安装的运行时default 这些都不是如果我们的"Microsoft.NETCore.App"依赖是default类型,那么它是自包含的,我们将需要自带运行时.如果是platform类型,则它取决于框架.
为什么这只发生在一些项目上?
它只会发生在自包含部署的项目中.如果您通过那些不需要runtimes属性的项目来查看,您会发现它们是类库或依赖于框架.
"frameworks": {
"netcoreapp1.0": {
"dependencies": {
"Microsoft.NETCore.App": {
"version": "1.0.0"
}
}
}
},
"runtimes": {
"win10-x64": {},
"osx.10.10-x64": {}
}
Run Code Online (Sandbox Code Playgroud)
"frameworks": {
"netcoreapp1.0": {
"dependencies": {
"Microsoft.NETCore.App": {
"type": "platform",
"version": "1.0.0"
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
"frameworks": {
"netstandard1.6": {}
}
Run Code Online (Sandbox Code Playgroud)
它如何影响我在linux或mac等其他操作系统上运行的能力?
它没有.Windows,Mac OS和Linux都可以预先安装运行时,或让应用程序自带运行时.
也可以看看
| 归档时间: |
|
| 查看次数: |
9052 次 |
| 最近记录: |