You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在MSBuild 15.0命令行(VS2017)指定私有NuGet包源?

在Visual Studio 2017中使用MSBuild 15.0指定私有NuGet源的方法

当然可以指定私有NuGet源啦!针对你用MSBuild 15.0的场景,这里有两种实用的解决方法:

方法一:在MSBuild命令中直接指定源

你可以通过/p:RestoreSources参数显式指定要使用的NuGet源,多个源之间用分号分隔。这样既能包含你的私有源,也能保留nuget.org的公共源(如果项目需要依赖公共包的话)。修改后的PowerShell命令如下:

&$msbuild /t:restore /tv:15.0 /t:Rebuild /p:Configuration=Release /p:RestoreSources="https://your-private-nuget-server/v3/index.json;https://api.nuget.org/v3/index.json"

如果你的项目只需要私有源的包,去掉后面的官方源地址即可。

方法二:通过NuGet.config配置源

如果你不想每次执行命令都手动添加参数,可以在项目根目录(或用户全局目录)下创建/修改NuGet.config文件,将私有源配置进去。MSBuild执行restore时会自动读取这个配置文件。

示例NuGet.config内容:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <!-- 自定义私有源,key是源的名称,value是源地址 -->
    <add key="MyPrivateNuGetServer" value="https://your-private-nuget-server/v3/index.json" />
    <!-- 保留官方NuGet源 -->
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
  </packageSources>
</configuration>
  • 放在项目根目录:仅对当前项目生效;
  • 放在用户全局目录(Windows下为%appdata%\NuGet\NuGet.config):对所有本地项目生效。

额外说明

如果你的私有源需要身份验证,还可以:

  • 在命令中添加/p:RestoreUsername="你的用户名"和/p:RestorePassword="你的密码"参数;
  • 或者在NuGet.config中配置凭据(更安全,避免明文密码暴露在命令行)。

内容的提问来源于stack exchange,提问作者Aathira

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:25:24