简体   繁体   中英

NuGet.exe pack gives access to the path is denied

When I try to pack my MVC project ( NuGet.exe pack ) I get:

NuGet.exe : Access to the path '...' is denied.

This happens to be the case for all files in the content and script folder of my MVC solution. If I remove the readonly flag on all these files NuGet.exe is able to create the NuGet package.

Why do I have to remove the readonly flag? Is there another way?

I'm using TFS which specify the readonly flag on all files under source control.

I am running:

  • NuGet Version: 1.7.30402.9028
  • Microsoft Visual Studio 2010 Version 10.0.40219.1 SP1Rel

I'm using the NuGet.exe that you get when you install the NuGet package NuGet.CommandLine which is located at http://nuget.org/packages/NuGet.CommandLine .

显然,您需要为其访问的文件设置ReadOnly=false

尝试以管理员身份运行它。

I ran into this with nuget restore after doing a git clean -fd with VisualStudio open: the packages/ directory was marked for deletion, and while several files were deleted, the packages/ folder itself was not as VisualStudio had the .nupkg files open.

Once I closed VisualStudio and re-ran git clean , it removed the packages/ directory and then nuget was able to restore everthing correctly.

In my case something happened when switching branch in git. Everyone lost execute permissions for Nuget.exe.

This blog post helped me: http://mannysiddiqui.wordpress.com/2013/05/11/nuget-access-is-denied-command-existed-with-code-5/

I was running into a similar problem. I attempted to restart Visual Studio, Run as Administrator (Which I always do), Set the folder attributes to ensure the 'Read-Only' flag was off. Regardless, whatever I did, I still encountered the error "access to the path is denied" when updating my Nu-Get packages.

I was able to fix the issue by updating packages one-by-one. Choosing instead to go through each dependency and updating it. Once the dependency was updated I would choose another, sometimes the same error resulted in which case I would choose another until all my packages were successfully updated.

It appears in my case the Nu-Get packages had to be updated in a particular order.

Hope this helps someone out there

My collegue just got this error, during all "worked on my machine". After some research I found out that the *.nuspec file for some reason wasn't added to the version control.

In order to Restore nuget packages, remove read only permissions from the folder level (for windows). Clean the solution and Build. It will works

I had this problem and it turned out windows had an update waiting for the next restart. Cleared with no problem after restarting and waiting for the update.

就我而言,它是最近修改的 git repo root 中的*.gitattributes (错误地),因此 git 开始在构建服务器上检出nuget.exe并将所有LF转换为内部的CRLF ,使其不可执行。

使用管理员权限运行Visual Studio。

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM