Как установить относительный путь для источника пакета на основе файлов с помощью NuGet?
Я использую NuGet 2.1 с несколькими решениями, каждый из которых находится в дочернем каталоге под одним родительским каталогом и в одном каталоге пакетов, который используется всеми решениями (это стало возможным благодаря NuGet 2.1).
Я хотел бы добавить источник пакета на основе файлов, который указывает на каталог пакетов в моей рабочей копии (я использую Subversion).
Это работает:
<configuration>
<repositoryPath>_Packages</repositoryPath>
<activePackageSource>
<add key="Working copy package source" value="C:\AllMySolutions\_Packages" />
</activePackageSource>
</configuration>
Это не означает:
<configuration>
<repositoryPath>_Packages</repositoryPath>
<activePackageSource>
<add key="Working copy package source" value="_Packages" />
</activePackageSource>
</configuration>
Я не хочу жестко закодировать абсолютный путь, но не могу найти способ использования относительного пути в атрибуте value внутри activePackageSource
.
Ответы
Ответ 1
Похоже, теперь это поддерживается.
http://nuget.codeplex.com/workitem/2810
-
Поместите файл с именем nuget.config в корень вашего решения (рядом с папкой пакетов и файлом решения), содержащим:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="Local" value="packages-local" />
</packageSources>
</configuration>
-
Создайте пакеты в локальной папке пакетов.
-
Пакеты в этой папке будут доступны для добавления в другие проекты в решении. (Возможно, вам придется перезапустить VS или, по крайней мере, закрыть повторно открыть решение для того, чтобы конфиг был выбран).