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. ...
随机推荐
- IBM System x3650 M3_RAID服务器进入阵列卡配置界面(webBIOS)
按 F1 进入 UEFI, 选择“System Settings”- “Adapters and UEFI Drivers”- “Please press ENTER to compile the l ...
- java四大名著及idea常用插件
四大名著 <Java编程思想><Think in Java> https://github.com/quanke/think-in-java https://github.co ...
- 高级UI-事件传递
事件传递在Android中有着举足轻重的作用,那么事件的传递在Android中又是怎么样实现的呢,在这里我们将进一步探讨Android的事件传递机制 从一个例子入手 首先是一个简单的onTouch和o ...
- python防止sql注入的方法
python防止sql注入的方法: 1. 使用cursor.execute(sql, args)的参数位: sql_str = "select * from py_msgcontrol.py ...
- LeetCode 941. 有效的山脉数组(Valid Mountain Array)
941. 有效的山脉数组 941. Valid Mountain Array 题目描述 给定一个整数数组 A,如果它是有效的山脉数组就返回 true,否则返回 false. 让我们回顾一下,如果 A ...
- 用pytorch1.0快速搭建简单的神经网络
用pytorch1.0搭建简单的神经网络 import torch import torch.nn.functional as F # 包含激励函数 # 建立神经网络 # 先定义所有的层属性(__in ...
- 037 Android Glide图片加载开源框架使用
1.Glide简单介绍 Glide是一款由Bump Technologies开发的图片加载框架,使得我们可以在Android平台上以极度简单的方式加载和展示图片.Glide是一个快速高效的Androi ...
- 011 Android AutoCompleteTextView(自动完成文本框)的基本使用
1.XML布局 android:completionThreshold="1":这里我们设置了输入一个字就显示提示 (1)主界面布局 <?xml version=" ...
- Guava 工具类之Cache的使用
一.guava cache 介绍 1.介绍 guava cache是Google guava中提供的一款轻量级的本地缓存组件,其特点是简单.轻便.完善.扩展性强,内存管理机制也相对完善. 2.使用缓存 ...
- Jenkins+maven+gitlab自动化部署之Jenkins系统管理配置(四)
一.Jenkins全局工具配置 在jenkins首页依次进入系统管理>>全局工具配置: 1) jdk.git.maven配置 指定其在服务器中的目录位置 二.插件管理 1)依次点开系统管理 ...