如何在mac上解决与aspnetvnext的依赖关系

本文关键字:aspnetvnext 依赖 关系 解决 mac | 更新日期: 2023-09-27 18:07:35

在尝试构建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的分辨率,似乎没有什么适用于我的情况…

如何解决这个问题?

如何在mac上解决与aspnetvnext的依赖关系

(假设您正在制作https://github.com/NuGet/NuGet.CommandLine…)

如何解决?

使用Windows。这个项目不是设计用来建立在Mono上的。它集成了Windows工具

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

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

fx/代表框架,去掉前缀,应该是一样的。当传递到DNX时,我希望这些符号消失。请尝试使用DNX进程安装它。

由于MSBuild目标和DNX的道具不可用,从Mono的xbuild脚本将不起作用。你必须使用

中的一个
  • "弃用"的dnvm.sh脚本和dnx/dnu命令恢复然后构建每个子项目。注意:在下载时已不再可用,并且对dnvm update-self的调用通过"404"释放脚本…

  • "microsoft.net Core共享框架主机","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。配置,但"net451"框架
  • 成功
  • NuGet.Packaging。核心
  • NuGet。包装
  • NuGet.Protocol.Core。v3 , 但是没关系@dnxcore50 (不要问我为什么)…

YANote:如果代码不能在任何地方转换,只能通过M$,这对我来说就不是源代码:我不能不把它作为源代码使用。这是一个密码,一个私人密码……可以扔掉的东西,而且可能没人在乎。