Я пытаюсь создать пакеты NuGet для пары внутренних проектов C# (в конечном итоге больше, но начиная с этих двух), которые используются в других решениях/проектах/etc. Оба этих внутренних проекта C# имеют ссылки на другие пакеты NuGet (в частности, на регистрацию в корпоративной библиотеке). Я использую функцию Nuget, которая позволяет ему создавать пакеты из файла CSPROJ, чтобы немного упростить мою жизнь. Проблема в том, что средство Nuget.Exe не идентифицирует пакеты, которые проект ссылается как зависимости. Чтобы дать полный макет решения:NuGet не оценивает package.config
Solution:
Project 1
Refs to some NuGet packages off the global repository (Enterprise Library, etc etc).
(has a packages.config file that explicity lists them all)
Project 2
Refs to some NuGet packages off the global repository (Enterprise Library, etc. etc).
Project ref to Project 1
(has a packages.config file that explicity lists them all)
командной строки я использую:
nuget pack Project2.csproj -IncludeReferencedProjects -verbosity detailed
The Релевент части вывода командной строки являются:
Found packages.config. Using packages listed as dependencies
Id: Project2
Version: 1.0.0.0
Authors: abc
Description: abc
Dependencies: Project1 (= 1.0.0.0)
Added file 'lib\net35\project2.dll'.
I ожидали «Зависимости: Project1, Enterprise Libray Logging и т. д. и т. д.»
* ПРИМЕЧАНИЕ: я должен был добавить файл nuspec как Project1, так и Project2 для правильной работы части зависимостей между проектами. Nuspec файл является по существу пустым, хотя, за исключением значений заполнителей:
<?xml version="1.0"?>
<package >
<metadata>
<id>$id$</id>
<version>$version$</version>
<title>$title$</title>
<authors>abc</authors>
<owners>abc</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>defr</description>
<copyright>Copyright 2013</copyright>
</metadata>
</package>
ближе всего я нашел на вопрос трекера NuGet является http://nuget.codeplex.com/workitem/3097, но немного отличается, и ни одно из решений, выдвинутых там, казалось, Работа.
У кого-нибудь есть аналогичная ситуация, работающая правильно?
Я использую NuGet 2.7 с Visual Studio 2012.
этот ответ недооценивается ИМХО, и упускается из виду – BozoJoe