zoukankan      html  css  js  c++  java
  • VS编译时使用/去除NuGet管理库

    原文链接:VS编译时自动下载NuGet管理的库

    之前一直使用NuGet来管理一些第三方的库,但是每次check in代码时候为了保证编译通过,都需要把对应的packages check in。

    比较耗费时间,特别是往github上同步代码,而且这些库在NuGet上都有的,是没有必要check in上去的。

    应广大的同胞的要求,NuGet在2.0版本开始支持在编译的时候自动同步对应的packages。不过在2.0-2.6版本,默认是没有勾选自动下载的,2.7之后默认是勾选的。

    一、设置自动下载

    二、设置启用NuGet restore功能

    在solution上右键

    最后效果如下:

    设置完成后,每当编译工程的时候,Build Task都会检查工程里的packages.config文件里的库是否在packages文件夹下,如果没有则会自动下载并解压到packages文件夹下。

    在下载过程中,NuGet都会检查对应的版本,不会自动升级的。

    二、关闭自动下载

    同样,在相应的设置界面关闭即可。

    若只是想使用本地的一些软件包,而不是网络版本,打开工程的package.config文件,删除掉特定的行即可。

    三。关闭工程中使用特定包

    这次使用记事本打开工程的vcxproj文件,注销掉与包有关的网络方案,替换为本地包。

    比如:

    把<Import Project="......NugetPackagesgflags.2.1.2.1uild ativegflags.props" Condition="Exists('......NugetPackagesgflags.2.1.2.1uild ativegflags.props')" />
    删除,

    贴错了难过

    把 <Import Project="......NugetPackagesLevelDB-vc120.1.2.0.0uild ativeLevelDB-vc120.targets" Condition="Exists('......NugetPackagesLevelDB-vc120.1.2.0.0uild ativeLevelDB-vc120.targets')" />   
    删除,

    把<Error Condition="!Exists('......NugetPackagesLevelDB-vc120.1.2.0.0uild ativeLevelDB-vc120.targets')" Text="$([System.String]::Format('$(ErrorText)', '......NugetPackagesLevelDB-vc120.1.2.0.0uild ativeLevelDB-vc120.targets'))" />
    删除,

    即可去除到所有使用Nuget的包含,然后替换为本地包。

  • 相关阅读:
    2020前端学习路线 之完结篇
    axios 请求超时,设置重新请求的完美解决方法
    如何终止前端发起的请求?
    轮询与长轮询
    最全React技术栈技术资料汇总(收藏)
    React 服务端渲染完美的解决方案
    将数组格式的字符串转换成数组
    Cannot read property 'map' of undefined
    计算机编码方式简介
    python01之文件处理
  • 原文地址:https://www.cnblogs.com/lidabo/p/9435069.html
Copyright © 2011-2022 走看看