我已经克隆了一个包含引用Json.Net作为Nuget包的VS项目的git存储库。该参考出现在形式:是否可以重写Visual Studio项目文件中的Nuget提示路径?
<HintPath>..\..\..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
我有克隆的资源库(与所有我的其他Git仓库一起)D:\Repos
。如你所见,没有办法让我的软件包安装3个以上的目录。
使用环境变量(NUGET_PACKAGES
)或packages.config
文件不会出现覆盖是获得硬烤成的软件包安装项目文件的相对路径。
虽然可以通过在文件系统中更深入地嵌入此特定回购3文件夹来解决此确切实例,但这不是解决问题的办法。
是否有可能告诉Visual Studio忽略这些作者指定的HintPath
s而偏向某种用户指定的路径?
这不是我的存储库,所以我不能像那样修改它。有人会认为有一个'repositoryPath'字段的配置我自己的本地副本将覆盖HintPaths,但没有......显然这太方便了。看来整个系统是为了对抗开源软件而设计的。 –
您可以将NuGet.Config文件放在存储库外的目录中。 NuGet会上到目录树,直到它找到一个NuGet.Config文件。但是,如果您无法修改.csproj文件,如果它们位于不同的存储库中,我不确定您可以执行任何操作。他们将始终引用其他软件包目录。 –
那么没有解决方案?这完全超出了nuget或Visual Studio解决方案的整体功能范围? –