I am trying to generate NuGet packages for a pair of internal C# projects (eventually more, but starting with these two) that are used in other solutions/projects/etc. Both of these internal C# projects have references to other NuGet packages (Enterprise Library Logging in particular). I am using the feature of Nuget that allows it to build the packages from the CSPROJ file to simplify my life a little bit. The problem is that the Nuget.Exe tool does not identify the packages that the project references as dependencies. To give a full layout of the solution:
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)
The command line I use is:
nuget pack Project2.csproj -IncludeReferencedProjects -verbosity detailed
The relevent parts of the output of the command line are:
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 would have expected "Dependencies: Project1, Enterprise Libray Logging, etc etc etc"
*NOTE: that I had to add a nuspec file to both Project1 and Project2 to get the interproject dependency part working correctly. The nuspec file is essentially blank though, save for the placeholder values:
<?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>
The closest thing I found on the NuGet issue tracker is http://nuget.codeplex.com/workitem/3097, but that is slightly different and neither of the solutions put forward in there seemed to work.
Anybody have a similar situation working correctly?
I am using NuGet 2.7 with Visual Studio 2012.