![](/img/trans.png)
[英]Package 'Faker.Net 1.0.3' was restored using '.NETFramework,Version=v4.6.1' instead of the project target framework '.NETCoreApp,Version=v2.0'
[英]was restored using '.NETFramework,Version=v4.6.1' instead of the project target framework '
我正在嘗試引用一個 nuget 包,它顯然是.NetStandard2.0
。 我們擁有此包的源代碼並將其寫入目標 .netstandard。 我們確實有一個 CI 管道,因此當我們推送此代碼時,它會構建和發布 nuget 包。 當我嘗試將生成的 nuget 包引用到我當前的 .netCore 應用程序中時,出現以下錯誤:
was restored using '.NETFramework,Version=v4.6.1' instead of the project target framework '.NETCoreApp,Version=v2.1'. This package may not be fully compatible with your project.
這對我來說沒有任何意義。 到目前為止,我已經嘗試了以下調試步驟:
dotpeek
分析生成的 nuget 包,以確保它實際上是一個 .netstandard 包。不知道是什么讓它認為它在任何時候都是針對的。 下面是我的 .csproj 配置的樣子
<TargetFramework>netstandard2.0</TargetFramework>
不確定這里是否有任何其他配置塊重要,但如果您需要更多信息,請告訴我。 有任何想法嗎?
我遇到了一個類似的問題,我通過 Azure Artifacts 發布我自己的 NetStandard2.0 包,然后嘗試在 netcore 應用程序中使用它。
結果發現問題在於我將我的包命名為與現有 NuGet 包相同的名稱。 我的 Azure Artifacts nuget 提要在 Visual Studio 中正確配置,但是當它嘗試安裝包時,它首先嘗試默認的 NuGet 提要,然后選擇另一個(恰好是 NetFramework 提要)而不是我的。
一旦我將我的包重命名為唯一的(我剛剛添加了我自己的命名空間)並重新發布,它一切正常。
我想這可能不是每個人的問題,但對我來說是。
您必須使用項目中與 .NETCoreApp,Version=v2.0 兼容的每個包。
在錯誤消息中的“was”之前應該有一些包名。 例如:
Package 'Microsoft.AspNet.WebApi.Client 5.2.2' was restored
Package 'EntityFramework 6.2.0' was restored
我也遇到了這個問題。 在我的例子中,當 DLL 被打包並放置在lib/
文件夾中時,出現了導入警告。 通過將打包lib/netstandard2.0
DLL放在lib/netstandard2.0
文件夾中解決了。
我有同樣的問題。 要解決這個問題
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.