如何调用“ nuget restore”以还原到内部nuget服务器中托管的特定目录,特定软件包

时间:2019-04-16 19:23:23

标签: c# msbuild nuget nuget-package-restore

假设我们有以下package.config:

    <?xml version="1.0" encoding="utf-8"?>
    <packages>
      <package id="MSBuildTasks" version="1.5.0.235" developmentDependency="true"  />
      <package id="Foo.Bar" version="6.0.2" />
      <package id="Foo.Ping" version="3.4.3" />
    </packages>

我们想将MSBuildTasks从nuget.org拖到“ packages”文件夹,并将Foo.Bar从内部nuget服务器拖到“ packages.inhouse”文件夹。在没有警告的情况下如何做到这一点?

我知道一个人可以将'nuget restore'与两个单独的nuget-config-files一起使用(+抑制命令行中的所有错误)。

该技术有效,但必然会在构建系统中生成有关未找到软件包的警告[*](在第一个调用中,Foo.Bar和Foo.Ping显然不存在于Nuget.org中,而在第二个调用中内部服务器中显然不存在“ MSBuildTasks”。

我对这种方法的幻像警告感到恼火,所以我只想知道那里是否还有更好的东西。

[*]是的,我知道可以抑制msbuild ala中的警告

   <Exec ContinueOnError="true" StandardOutputImportance="low" StandardErrorImportance="low"   Command=" nuget restore <config file>" />

但仍然很常见...

0 个答案:

没有答案