簡體   English   中英

NuGet.exe 包提供對路徑的訪問被拒絕

[英]NuGet.exe pack gives access to the path is denied

當我嘗試打包我的 MVC 項目( NuGet.exe pack )時,我得到:

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

我的 MVC 解決方案的contentscript文件夾中的所有文件恰好都是這種情況。 如果我刪除所有這些文件上的只讀標志, NuGet.exe就能夠創建 NuGet 包。

為什么我必須刪除只讀標志? 還有其他方法嗎?

我正在使用 TFS,它在源代碼管理下的所有文件上指定只讀標志。

我在跑步:

  • NuGet 版本:1.7.30402.9028
  • Microsoft Visual Studio 2010 版本 10.0.40219.1 SP1Rel

我正在使用您在安裝 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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM