我有一个新的ASP.NET 5项目,并设置project.json如下;
"frameworks": {
"dnx451": {
"dependencies": {
"ExternalLibrary": "1.3.0" }
},
"dnxcore50": {}
}
我正在使用project.json中定义的默认命令通过Kestrel运行该项目。
"kestrel": "Microsoft.AspNet.Hosting --server Kestrel --server.urls http://localhost:5001"
一切都很好。该项目正在运行,并且依赖关系运行良好。我唯一不明白的是,是谁决定使用哪个底层框架?
据我所知,如果Kestrel使用dnxcore50,项目就会失败。如果是这样的话,我们该如何推动Kestrel使用它呢?
顺便提一句,这个项目运行得很好,完全没有错误,但是当我尝试用DNU手动构建项目时,我会得到下面的错误。在这一点上,我不认为它很重要,因为据我所见,它不会在运行时导致失败。只是想把它加进去以防有帮助。
http://pastebin.com/x44VtXct
发布于 2015-06-15 13:09:21
在Visual 2015中,所使用的框架按以下顺序确定:
从命令行运行时,它由active dnvm
确定。您可以使用命令dnvm list
显示已安装的VM。您将得到一个类似于以下内容的列表:
Active Version Runtime Architecture Location Alias
------ ------- ------- ------------ -------- -----
1.0.0-beta4 clr x64 C:\Users\Matt\.dnx\runtimes
1.0.0-beta4 clr x86 C:\Users\Matt\.dnx\runtimes
1.0.0-beta4 coreclr x64 C:\Users\Matt\.dnx\runtimes
1.0.0-beta4 coreclr x86 C:\Users\Matt\.dnx\runtimes
1.0.0-beta4-11566 clr x86 C:\Users\Matt\.dnx\runtimes
1.0.0-beta5-11855 clr x64 C:\Users\Matt\.dnx\runtimes
1.0.0-beta5-11855 clr x86 C:\Users\Matt\.dnx\runtimes
1.0.0-beta5-11855 coreclr x64 C:\Users\Matt\.dnx\runtimes
1.0.0-beta6-11921 clr x64 C:\Users\Matt\.dnx\runtimes
1.0.0-beta6-11921 clr x86 C:\Users\Matt\.dnx\runtimes x64
1.0.0-beta6-12005 clr x64 C:\Users\Matt\.dnx\runtimes
1.0.0-beta6-12005 clr x86 C:\Users\Matt\.dnx\runtimes
* 1.0.0-beta6-12032 clr x64 C:\Users\Matt\.dnx\runtimes default
1.0.0-beta6-12032 clr x86 C:\Users\Matt\.dnx\runtimes
*
指示当前的VM。coreclr
使用dnxcore50
,其他(可能是Mac上的mono
)使用相应的框架,但似乎编译为dnx451
。
https://stackoverflow.com/questions/30842212
复制相似问题