Nuget & VS Plugin
VS Plugin
vsCode:https://marketplace.visualstudio.com/vscode
vs:https://marketplace.visualstudio.com/vs
vs插件安装方法
- 在线:NuGet
- 离线:cd Vs2013安装路径\Common7\IDE,执行 VSIXInstaller.exe xxx.vsix路径
关于插件无法下载的问题,采用如下方法:URL模版
//vsCode模版
https://${publisher}.gallery.vsassets.io/_apis/public/gallery/publisher/${publisher}/extension/${extension name}/${version}/assetbyname/Microsoft.VisualStudio.Services.VSIXPackage
参考教程:https://blog.csdn.net/wangwei703/article/details/54020712
Nuget
安装指定版本包
Install-Package SM.Cryptography -Version 1.0.5
在解决方案同级目录创建packages文件夹,建议复制本地和特定版本属性改为false
bat文件:调用MSBuild之前执行如下命令
nuget restore "%SLNPATH%\slnName.sln" -source "nuget仓库地址"
系统会自动从仓库下载依赖的程序包并进行项目构建(读取.sln目录的NuGet.config及.csproj目录的packages.config)
修改全局缓存位置
nuget 默认全局包下载地址:C:\Users\username\.nuget\packages
可以安装 nuget.exe (需将保存路径添加到系统变量PATH中)
nuget locals all -list #查看缓存路径位置
扩展知识参见:When NuGet is down…
Step1. 先在 Nuget.config文件添加
<disabledPackageSources>
<add key="Microsoft and .NET" value="true" />
<add key="Microsoft Visual Studio Offline Packages" value="true" />
</disabledPackageSources>
<config>
<add key="globalPackagesFolder" value="F:\Nuget\.nuget\packages" />
<add key="repositoryPath" value="F:\Nuget\.nuget\packages" />
</config>
其中,Nuget.config 位置在 C:\Users\username\AppData\Roaming\NuGet,具体参见:修改方法
【注意】,修改全局路径后,项目会优先在该路径下搜索包,而不是优先项目本身自己的packages。
若优先项目本地路径,请按照 nuget.config 指定路径即可。
Step2. 更新路径链接
将待移动文件夹直接cut到目标位置,执行 cmd mklink 命令
mklink /d C:\Users\wjcx\AppData\Local\NuGet\Cache F:\GoogleDownload\Soft\nuget\Cache
同理,可以链接v3-cache文件夹到指定位置。
关于 mklink命令使用遇到的问题,参见:https://cloud.tencent.com/developer/article/1341325
VS项目中nuget位置
默认.sln同级目录创建packages文件夹,建议:复制本地和特定版本属性设为false
.bat文件调用MSBuild之前执行命令nuget restore "%SLNPATH%\sln_name.sln" -source "nuget_repository_addr"
若在项目中NuGet Packages到指定路径,参见:NuGet Package路径配置
在 *.sln文件同目录下新建配置文件 nuget.config
<?xml version="1.0" encoding="utf-8"?>
<settings>
<repositoryPath>.\Dependencies\packages</repositoryPath>
</settings>
相对路径以nuget.config所在位置为准。详细配置参见:NuGet.config引用 | MicroSoft
以上配置在VS2013正常、下面的配置不正常,但是在VS2017是正常,再议之
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<config>
<add key="repositoryPath" value="..\Dependencies\packages" />
</config>
</configuration>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<solution>
<!-- 默认不将 packages 提交到源代码管理 -->
<add key="disableSourceControlIntegration" value="true" />
</solution>
<config>
<!-- 指定这个目录下默认的packages目录 -->
<add key="repositorypath" value="..\Dependencies\packages" />
</config>
<packageRestore>
<!-- 默认启用 packages 还原 -->
<add key="enabled" value="True" />
</packageRestore>
</configuration>
mklink
Nuget & VS Plugin的更多相关文章
- 使用NuGet管理项目类库引用
NuGet 是微软开发平台(包括.NET平台)的一个包管理器,这里只介绍和.NET相关的NuGet Visual Studio扩展客户端, 在VS2010 ,VS2012 ,VS2013中默认集成了N ...
- NuGet管理
使用NuGet管理项目类库引用 NuGet 是微软开发平台(包括.NET平台)的一个包管理器,这里只介绍和.NET相关的NuGet Visual Studio扩展客户端, 在VS2010 ,VS2 ...
- .NET Core 从 Github到 Nuget 持续集成、部署
一.前言 Nuget 作为一个.NET研发人员,我想你都不会陌生,他为我们提供非常方便的程序包管理,不管是版本,还是包的依赖都能轻松应对,可以说是我们的好助手.而 Nuget 除了官方nuget.or ...
- 创建一个dynamics 365 CRM online plugin (一) - Hello World Plugin
源代码连接:https://github.com/TheMiao/Dynamics365CRM/blob/master/MyCRM/MyCRM/HelloWorld.cs 首先,我们需要创建一个.NE ...
- Xamarin+Prism开发详解七:Plugin开发与打包测试
有了上章[Xamarin+Prism开发详解六:DependencyService与IPlatformInitializer的关系]的基础,现在来理解Plugin开发就简单了. 本文实例代码地址:ht ...
- Jenkins 集成 git .net 和nuget
1. 源码配置 在 Credentials中配置 git 账号密码(如果是Gitee 可以使用 Jenkins Gitee Plugin) 2. 构建编译版本 2.1 批处理的目的 还原Nuget包 ...
- C# 移动开发(Xamarin.Form) Plugin.BLE 蓝牙连接
随着Xamarin.Form项目接近尾声,仔细一算才发现过来大半年时间了. 期间除了刚开始有闲情写写,现在总算有空来总结一下了. 来先说 Plugin.BLE (https://github.com/ ...
- Jenkins 安装的HTML Publisher Plugin 插件无法展示ant生成的JunitReport报告
最近在做基于jenkins ant junit 的测试持续集成,单独ant junit生成的junitreport报告打开正常,使用Jenkins的HTML Publisher Plugin 插件无 ...
- NuGet镜像上线试运行
为解决国内访问NuGet服务器速度不稳定的问题,我们用阿里云服务器搭建了一个NuGet镜像,目前已上线试运行. 使用NuGet镜像源的方法如下: 1)NuGet镜像源地址:https://nuget. ...
随机推荐
- linux添加动态库路劲
修改这个文件/etc/ld.so.conf.d,最后加上so的绝对路径即可
- Qt编写气体安全管理系统24-地图管理
一.前言 地图管理的主要功能是将系统中的地图文件做添加和删除,支持常见的jpg.png.bmp等格式图片,图片分辨率建议小于1080P,最好是和目标客户端电脑分辨率一致,这样在拉伸缩放的时候会比较清晰 ...
- python 判断文件是否存在和删除文件的api (其中判断文件在不在让想起这个可以强兼容jenkins工作目录那个问题)
判断文件在不在的api: os即operating system(操作系统),Python 的 os 模块封装了常见的文件和目录操作. os.path模块主要用于文件的属性获取,exists是“存在” ...
- Flink 实现指定时长或消息条数的触发器
Flink 中窗口是很重要的一个功能,而窗口又经常配合触发器一起使用. Flink 自带的触发器大概有: CountTrigger: 指定条数触发 ContinuousEventTimeTrigger ...
- 改进初学者的PID-手自动切换
最近看到了Brett Beauregard发表的有关PID的系列文章,感觉对于理解PID算法很有帮助,于是将系列文章翻译过来!在自我提高的过程中,也希望对同道中人有所帮助.作者Brett Beaure ...
- POJ 2584 T-Shirt Gumbo 二分图的多重匹配
题目链接:http://poj.org/problem?id=2584 题目大意:有SMLXT五种T恤型号,有N个人,每个人有一个可选的型号区间,你现在要发给N个人每人一条他可以选择的型号的T恤,问能 ...
- 【JS新手教程】LODOP打印复选框选中的内容
在html中,复选框是常见的使用之一,本文介绍如何获取选中的复选框的值,并用LODOP打印.给需要为一组的复选框,复选框的checkbox设置相同的name属性,设置不同的id,然后设置需要的valu ...
- c# .net 查找并安装CA根证书
https CA根证书 用的是证书指纹来查找. 在用 collection.Find 之前 ,X509Store 一定要打开(Open),否则找到的数量(X509Certificate2Collect ...
- 手把手教你如何安装Tensorflow(Windows和Linux两种版本)
tensorflow 不支持Python2.7,最好选择下载Python3.5 现在越来越多的人工智能和机器学习以及深度学习,强化学习出现了,然后自己也对这个产生了点兴趣,特别的进行了一点点学习,就通 ...
- SSH连接服务器时,长时间不操作就会断开的解决方案
最近在配置服务器相关内容时候,不同的事情导致长时间不操作,页面就断开了连接,不能操作,只能关闭窗口,最后通过以下命令解决. SSH连接linux时,长时间不操作就断开的解决方案: 1.修改/etc/s ...