如何在mac上解析aspnet vnext的依赖关系?

时间:2015-08-11 22:04:18

标签: c# asp.net-core

在尝试构建NuGet3时,我收到以下错误:

~/Projects/NuGet3-dev/src/NuGet.CommandLine/project.json(22,46): error: The dependency fx/Microsoft.Build.Framework >= 14.0.0 could not be resolved.

根据

,我不知道为什么它不会得到解决
 gacutil -l 

我拥有它:

 Microsoft.Build.Framework, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a

我查看了有关此问题的所有内容,但它几乎完全基于Visual Studio和Windows的解决方案,似乎没有任何内容适用于我的情况......

如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

(假设您正在处理https://github.com/NuGet/NuGet.CommandLine ...)

如何解决?

使用Windows。此项目不是为Mono构建的。它与Windows工具集成。

答案 1 :(得分:0)

在POSIX系统下(想想,一些真正的操作系统):

简而言之,使用DNX或dotnet(表示M $ .Net Core)及其restore命令来解决依赖关系。

fx/代表框架,只需删除前缀,它应该是相同的。当我转到DNX时,我播种这些符号消失了。只需尝试使用DNX进程安装它。

由于DNX的MSBuild目标和道具不可用,Mono的xbuild脚本无法正常工作。 你必须使用

中的一个
  • "已弃用" dnvm.sh脚本和dnx / dnu命令用于恢复然后构建每个子项目。 注意:在下载时尚未提供,而对dnvm update-self的调用会通过" 404" ...

  • " Microsoft .NET核心共享框架主机"," dotnet" (我不会使用)

如果您有Dnx,请从NuGet3源代码的src子目录中尝试此命令行,这应该是最常用的: (for d in *; do (cd $d && dnu restore && dnu build); done)2>&1|tee build-all.log

对我来说,使用Debian-8,存在构建失败:

  • NuGet.CommandLine.XPlat
  • NuGet.Configuration 但是它成功了" net451"框架
  • NuGet.Packaging.Core
  • NuGet.Packaging
  • NuGet.Protocol.Core.v3 但是没关系@ dnxcore50 (不要问我原因)......

YANote:如果代码无法通过M $进行任何转换,这对我来说不是源代码:我不能不将它用作源代码。这是一个密码,一个私人密码......一些可以扔掉的东西,而且可能没有人关心。