簡體   English   中英

為什么 Visual Studio 找不到這個 nuget 包的 .props 文件?

[英]Why can't Visual Studio find this nuget package's .props file?

由於某些 git 項目更改,當我嘗試構建時,出現錯誤:

此項目引用此計算機上缺少的 NuGet 包。 使用 NuGet Package Restore 來下載它們。 有關詳細信息,請參閱http://go.microsoft.com/fwlink/?LinkID=322105 丟失的文件是 ..\\packages\\MSTest.TestAdapter.1.1.11\\build\\net45\\MSTest.TestAdapter.props。

對項目的引用包含四個缺失的引用,其中兩個Microsoft.VisualStudio.TestPlatform.TestFrameworkMicrosoft.VisualStudio.TestPlatform.TestFramework.Extensions似乎相關。

另外兩個,以防它被證明是相關的SystemSystem.Core ,但它們沒有引起任何問題......這很奇怪,因為我肯定會使用它們。

那個丟失的文件,錯誤消息中的文件,絕對存在。

我嘗試卸載並重新安裝這兩個軟件包,但似乎沒有任何幫助。

使用您喜歡的文本編輯器打開項目.csproj文件並刪除對

MSTest.TestAdapter.props。

編輯:這樣做是安全的,所發生的只是您已經刪除了 DLL,但出於某種原因或其他原因,您的項目文件仍將其作為依賴項引用。

我會修改@JoshuaDuxbury 的回答說:您需要清除對MSTest.TestAdapter.props過時引用

就我而言,我剛剛將MSTest.TestAdapter NuGet 從1.3.2更新到2.0.0 ,但顯然當我這樣做時,Visual Studio 並沒有完美地清理我的 .csproj 文件。

所以,我不得不刪除superflous MSTest.TestAdapter.props在兩個地方強調:

在項目文件頂部附近: 如果您有兩個,請刪除突出顯示的代碼行

...再次在文件底部: 在此處輸入圖片說明 一旦我這樣做了,我的 CI 管道就能夠再次正確地構建一切。

一些眼睛敏銳的人可能會注意到上面顯示的 MSTest.TestAdapter 1.3.2 的一些有趣的事情:似乎包文件夾的路徑已關閉! 但這將是不同線程的主題(或者可能是對為什么您的構建管道不滿意的另一種解釋......也許只是修復您的包路徑)。

我的問題不是發生在我的開發盒上,而是發生在 Azure Build Pipeline 上。 我根據其他答案刪除了有問題的道具文件,但無濟於事。 最終,我不得不將Nuget restore步驟添加到我的 Azure 構建管道中,並在構建之前將其移動到正確的插槽中:

在此處輸入圖片說明

我不知道我是怎么做到的,但我遇到了同樣的錯誤,我以為文件在這里,但實際上不是……所以遇到這個問題的人請仔細檢查路徑。 在我的情況下,Packages 文件夾與項目文件處於同一級別,但是它正在父目錄中查找文件。 Nuget restore 和 Update-Package -reinstall 沒有修復任何問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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