Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Nuget returned an unexpected status code '404 Not Found' - Package on local drive

Trying to generate a Nuget Package from dll. One of our project is generating ConfigurationCore.dll and References of project assemblies given below

  • Microsoft.CSharp
  • Newtonsoft.Json
  • Mak.Enums (Custom Nuget Package available on local Nuget Server)
  • Mak.Operations (Custom Nuget Package available on local Nuget Server)
  • PresentationCore, PresentationFramework, PresentationFramework.Aero
  • System, System.Core, System.Data, System.Data.DataSetExtensions
  • System.Drawing, System.IO.Compression, System.IO.Compression.FileSystem
  • System.Net.Http, System.Runtime.Serialization, System.Web
  • System.Xaml, System.Xml, System.Xml.Linq, WindowsBase

Using below ConfigurationCore.nuspec to generate Nuget Package

<?xml version="1.0"?>
<package >
<metadata>
<id>ConfigurationCore</id>
<version>1.2.0</version>
<title>Configuration Core</title>
<authors>MAKK</authors>
<owners>IT Department</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>ConfigurationCore contains core funcationality of Software</description>
<releaseNotes></releaseNotes>
<copyright>Copyright 2018</copyright>

<dependencies>
  <dependency id="Newtonsoft.Json" version="10.0.3" />
</dependencies>
</metadata>
<files>
<file src="C:\Users\makk\source\repos\ConfigurationCore\bin\x86\Test\ConfigurationCore.dll" target="lib\net461" />
</files>
</package>

Attempting to gather dependency information for package 'ConfigurationCore.1.2.0' with respect to project 'NugetTest', targeting '.NETFramework,Version=v4.6.1' Gathering dependency information took 1.09 sec Attempting to resolve dependencies for package 'ConfigurationCore.1.2.0' with DependencyBehavior 'Lowest' Resolving dependency information took 0 ms Resolving actions to install package 'ConfigurationCore.1.2.0' Resolved actions to install package 'ConfigurationCore.1.2.0' The V2 feed at 'http://builtsrv1:8080/nuget/FindPackagesById()?id='ConfigurationCore'&semVerLevel=2.0.0' returned an unexpected status code '404 Not Found'. Time Elapsed: 00:00:02.1513344 ========== Finished ==========

Note: The Nuget package source is on local harddrive... Please advise to fix the issue.

like image 461
Joseph Cenk Avatar asked Jan 16 '18 05:01

Joseph Cenk


4 Answers

Update your Nuget package link.

Go to Project -> Manage Nuget Packages.

Now click on your package source settings.

Update Source Link to https://api.nuget.org/v3/index.json

Screenshot of the example settings as explained above.

like image 137
Munirul Islam Avatar answered Oct 31 '22 15:10

Munirul Islam


Your URL should end with /nuget

Example: http://yourDomain.co/yourNuGetServer/nuget

like image 38
Marouane Afroukh Avatar answered Oct 31 '22 14:10

Marouane Afroukh


This is problem of bad connection in the NuGet package. Add the following link into the NuGet Package. https://api.nuget.org/v3/index.json Tha

like image 4
Mohammad Shahnawaz Avatar answered Oct 31 '22 13:10

Mohammad Shahnawaz


Nuget returned an unexpected status code '404 Not Found' - Package on local drive

  1. Make sure the path in the src="..." is correct.

    Perhaps the path should be:

    ...\ConfigurationCore\ConfigurationCore\... rather than ...\ConfigurationCore\....

    In short, make sure you can find the dll file base on that url.

    Note: Generally, we recommend using relative paths in url, like:

    <file src="bin\x86\Test\ConfigurationCore.dll" target="lib\net461" />

  2. Update the version of nuget.exe.

    There is an issue on the nuget.exe 3.4.x, so please download nuget.exe 3.5 and above.

See Create nuget package from dlls for more detailed info.

Update: Please following below steps to create the nuget package:

  1. Download the nuget.exe, and set it on your local, for example, D:\NuGetLocalFolder.

  2. Create a new project with project name "ConfigurationCore".

  3. Open a cmd and switch to the path where nuget.exe was stored previously.

  4. Use command line:

    nuget spec "C:\Users\<Username>\Source\repos\ConfigurationCore\ConfigurationCore\ConfigurationCore.csproj"
    

    enter image description here

    You will find the .nuspec be genererated, Do not close this CMD window.

  5. Edit the ConfigurationCore.csproj.nuspec file and modify it, below is my .nuspec file:

    <?xml version="1.0"?>
    <package >
      <metadata>
        <id>ConfigurationCore</id>
        <version>1.2.0</version>
        <title>Configuration Core</title>
        <authors>MAKK</authors>
        <owners>IT Department</owners>
        <requireLicenseAcceptance>false</requireLicenseAcceptance>
        <description>ConfigurationCore contains core funcationality of Software</description>
        <releaseNotes></releaseNotes>
        <copyright>Copyright 2018</copyright>
    
        <dependencies>
          <dependency id="Newtonsoft.Json" version="10.0.3" />
        </dependencies>
      </metadata>
      <files>
        <file src="C:\Users\Admin\Source\repos\ConfigurationCore\ConfigurationCore\bin\x86\Test\ConfigurationCore.dll" target="lib\net461" />
      </files>
    </package>
    
  6. Save ConfigurationCore.csproj.nuspec file, and back to your CMD window, using pack command to generate the nuget package:

    enter image description here

    The package ConfigurationCore.1.2.0.nupkg was created into the folder where nuget.exe exists, D:\NuGetLocalFolder.

like image 2
Leo Liu-MSFT Avatar answered Oct 31 '22 13:10

Leo Liu-MSFT