3
votes

Reference this thread: Previous Question

I've tried each of the various solutions proposed, still the "Assembly outside lib folder" error persists.

I used this below nuspec file format for other projects and it works fine below is my nuspec file:

<?xml version="1.0"?>
<package >
  <metadata>
    <id>Workflow.Assembly</id>
    <version>1.0.0.0</version>
    <title>Workflow.Assembly</title>
    <authors>MyAuthor</authors>
    <owners>MyOwner</owners>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <description>My Description</description>
    <releaseNotes>My Release notes</releaseNotes>
    <copyright>Copyright 2016</copyright>
    <tags>My Tags</tags>
  </metadata>
</package>

powershell command lines: nuget spec MyProject.csproj (creates the shell of the nuspec file, edited to look like the above sample)

nuget pack MyProject.csproj -IncludeReferencedProjects (output sample) WARNING: 11 issue(s) found with package 'MyAssembly'.

Issue: Assembly outside lib folder. Description: The assembly 'content\lib\MyReferenced.dll' is not inside the 'lib' folder and hence it won't be added as reference when the package is installed into a project. Solution: Move it into the 'lib' folder if it should be referenced.

I've tried the various <files /> <dependency /> combinations of modifiers mentioned in the previous question but still I get the error.

To what folder does this "lib" folder refer, how can I get the absolute path (if path is what it wants) of where nuget expects the dependent dll's to reside?

1

1 Answers

4
votes

Add a 'files' section to your nuspec linking the output of your project to the 'lib' folder.

<files>
  <file src="bin\Release\MyAssembly.???" target="lib" />
</files>

https://docs.nuget.org/create/nuspec-reference