我试着把dnx作为nuget包。为此,我在我的project.json中包括dnx-clr-win-x64和dnx-clr-win-x86包。
"dependencies": {
...
"dnx-clr-win-x64": "1.0.0-beta4",
"dnx-clr-win-x86": "1.0.0-beta4"
}并将我的web.confing中的运行时路径设置设置为packages目录。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
...
<add key="runtime-path" value="../../packages" />
</appSettings>
</configuration>在我的包目录中,我有带有dnx-clr-win-x64和dnx-clr-win-x86子目录的1.0.0-beta4目录。
但是,当我试图运行我的应用程序时,我得到了一个错误:
无法加载文件或程序集“dnx.clr.managed”或其依赖项之一。系统找不到指定的文件。
似乎AspNet.Loader.dll搜索目录名为dnx-clr-win-x64.1.0.0-beta4。但是包存储在dnx-clr-win-x64/1.0.0-beta4中。
如果我在dnx-clr-win-x64.1.0.0-beta4目录中创建packages目录,并将dnx-clr-win-x64/1.0.0-beta4复制到其中,那么一切都很好。
可以将dnx作为nuget包引用吗?
发布于 2015-07-16 17:00:07
根据你的问题和你对它的评论,答案是否定的。您不能引用DNX并将其作为NuGet引用,因为您有一个引导问题:需要dnu (dnx的一部分)来下载NuGet包。
但是,您可以编写一个构建脚本,类似于我们( asp.net团队)所做的工作:https://github.com/aspnet/Configuration/blob/dev/build.cmd
基本上,要获得dnx,构建脚本所需要做的就是:
dnvm install <version>另外,如果您不希望dnx是全局的,您可以将DNX_HOME环境变量设置为指向另一个文件夹。
https://stackoverflow.com/questions/31457768
复制相似问题