[英]NuGet.exe pack gives access to the path is denied
当我尝试打包我的 MVC 项目( NuGet.exe pack
)时,我得到:
NuGet.exe : Access to the path '...' is denied.
我的 MVC 解决方案的content
和script
文件夹中的所有文件恰好都是这种情况。 如果我删除所有这些文件上的只读标志, NuGet.exe
就能够创建 NuGet 包。
为什么我必须删除只读标志? 还有其他方法吗?
我正在使用 TFS,它在源代码管理下的所有文件上指定只读标志。
我在跑步:
我正在使用您在安装 NuGet 包NuGet.CommandLine时获得的NuGet.exe
,该包位于http://nuget.org/packages/NuGet.CommandLine 。
显然,您需要为其访问的文件设置ReadOnly=false
尝试以管理员身份运行它。
我在使用VisualStudio打开git clean -fd
后使用nuget restore
遇到了这个问题: packages/
目录被标记为删除,并且删除了几个文件时, packages/
文件本身并不像VisualStudio打开的.nupkg
文件那样。
一旦我关闭VisualStudio并重新运行git clean
,它就删除了packages/
目录,然后nuget能够正确恢复everthing。
在我的情况下,在git中切换分支时发生了一些事情。 每个人都失去了Nuget.exe的执行权限。
这篇博文对我有所帮助: http : //mannysiddiqui.wordpress.com/2013/05/11/nuget-access-is-denied-command-existed-with-code-5/
我遇到了类似的问题。 我尝试重新启动Visual Studio,以管理员身份运行(我总是这样做),设置文件夹属性以确保“只读”标志已关闭。 无论如何,无论我做了什么,我在更新我的Nu-Get软件包时仍然遇到错误“拒绝访问路径”。
我能够通过逐个更新包来解决问题。 选择通过每个依赖项并更新它。 一旦依赖关系被更新,我会选择另一个,有时会出现相同的错误,在这种情况下,我会选择另一个,直到我的所有包都成功更新。
在我看来,Nu-Get包必须按特定顺序更新。
希望这有助于那里的人
我的同事在所有“在我的机器上工作”期间遇到了这个错误。 经过一些研究后,我发现由于某种原因* .nuspec文件没有添加到版本控件中。
要恢复nuget包,请从文件夹级别(对于Windows)删除只读权限。 清理解决方案并构建。 它会奏效
我遇到了这个问题,结果发现Windows有一个等待下次重启的更新。 重新启动并等待更新后清除没有问题。
就我而言,它是最近修改的 git repo root 中的*.gitattributes
(错误地),因此 git 开始在构建服务器上检出nuget.exe
并将所有LF
转换为内部的CRLF
,使其不可执行。
使用管理员权限运行Visual Studio。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.