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. ...
随机推荐
- 【微信开发】微信小程序通过经纬度计算两地距离php代码实现
需求: 要求做个根据用户当前位置获取周围商家地址,并且按照由近到远排序, 方法一: 代码层实现 封装方法: /** * @desc 根据两点间的经纬度计算距离 * @param float $lat ...
- Vue学习笔记十一:按键修饰符和自定义指令(钩子函数)
目录 padStart:补位 按键修饰符 Vue提供的按键修饰符 自定义按键修饰符 自定义指令 自定义指令的使用 钩子函数 钩子函数参数 使用钩子函数的bingding参数 私有自定义指令 钩子函数的 ...
- 将WPF转为PDF
https://blog.csdn.net/xgugu1210/article/details/51878104 https://www.cnblogs.com/zeoy/archive/2013/0 ...
- 删除SQL约束的方法
在SQL数据库中,如果需要删除表约束,应该如何操作呢?下面就将为您介绍删除SQL表约束的方法,供您参考,希望对您有所帮助. --1)禁止所有表约束的SQL select 'alter table '+ ...
- Python3之内建模块hashlib
摘要算法简介 Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等. 什么是摘要算法呢?摘要算法又称哈希算法.散列算法.它通过一个函数,把任意长度的数据转换为一个长度固定的数据串( ...
- PHP 数据库连接
$db = new MySQLi("localhost","root","123","php0307"); !mysql ...
- 软件素材---linux C语言:拼接字符串函数 strcat的用例(与char数组联合使用挺好)
[头文件]#include <string.h> [原型] 1 char *strcat(char *dest, const char *src); [参数]: dest 为目标字符串指针 ...
- .net字符串内存的分配
几次面试中遇到都有类似的问题,就是 string str = "aa" + "bb" + "ccc";进行了几次内存分配? 1 class ...
- php密码正则匹配
<?php /** * @param $pwd * @return string */ function isPwd($pwd){ $pattern= '/^[0-9a-z_$]{6,16}$/ ...
- LeetCode 617. 合并二叉树(Merge Two Binary Trees)
617. 合并二叉树 617. Merge Two Binary Trees 题目描述 给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠. 你需要将他们合并为一个新 ...