0

It seems as if a Nuget package can't have (or maybe end in) the word "Resource" or "Resources". I created a Nuget package named IotSuite.Resources, that in turn depends on two other packages.

When I install in another project, the two dependent packages show up, but the one named IotSuite.Resources does not (nor does anything within it resolve).

In Visual Studio, I then used the exact same project that generated the faulty nuget package, and did nothing but rename the assembly in the project properties (which then becomes the value of the nuspec id). I rebuilt and regenerated the package and everything installed correctly.

Wondering if anyone has seen this? I could just rename the package/assembly, but I'm stubborn :), and now I'm also wondering if there are other blacklisted terms.

Version: 3.3.0.212

Jim O'Neil
  • 23,344
  • 7
  • 42
  • 67
  • Something to do with http://stackoverflow.com/questions/16856263/use-nuget-to-add-a-project-assembly-reference-to-a-file-named-resources-dll maybe? – Sami Kuhmonen Feb 23 '16 at 06:27

1 Answers1

1

This is a known gotcha alright. There's a workaround here but it's not very nice.

NuGet does not add references to any dlls that end with '.resources.dll'. Please refer to the following Codeplex discussion: http://nuget.codeplex.com/discussions/280566

Aside from that package Ids follow normal .NET namespace rules.

Community
  • 1
  • 1
Damien Dennehy
  • 3,937
  • 2
  • 19
  • 21
  • Thank you... what a time sink! I failed miserably trying to find a reference to this using searches with the overloaded term "references". Of course my "resource" refers to the REST connotation not localization... – Jim O'Neil Feb 23 '16 at 13:01