私は(.NET Coreで書かれている)nopCommerceを使用しようとしていますが、私が直面しているプロジェクトを実行したいときに52エラーが表示されます。
資産ファイル〜\ obj\project .assets.json 'が見つかりません。このファイルを生成するには、NuGetパッケージの復元を実行します。 Nop.Web.MVC.Testsote
ソリューションを右クリックして[Nugetパッケージの復元]を選択すると、次のメッセージが表示されます。
すべてのパッケージはすでにインストールされており、復元するものは何もありません。
しかし、それらの52個のエラーはまだ存在し、ツール - > NuGetパッケージマネージャ - >ソリューションのNuGetパッケージの管理 _にも、ソリューションにインストールされたものはありません。
ツール> NuGetパッケージマネージャ>パッケージマネージャコンソールからこのエラーを修正するには、単に実行します。
dotnet restore
このエラーは、dotnet cliが最初に必要なファイルをすべて作成していないために発生します。 dotnet restoreを実行すると必要なファイルが追加されます。
私の場合、エラーはGITリポジトリでした。名前にスペースが含まれていたため、プロジェクトを復元できませんでした
これがあなたの問題であれば、クローンを作成するときにGITリポジトリの名前を変更するだけです。
git clone http://Your%20Project%20With%20Spaces newprojectname
ここに掲載されている他の回答に従ってNuGetパッケージが復元されたことを確認したら、Visual Studioを閉じて再度開くことで、この問題は解決しました。
「dotnet restore」が機能しない場合は、次の手順に従ってください。
ツール > NuGet Package Manager > Package Managerコンソール を選択します。
そして実行します。
dotnet restore <project or solution name>
ソリューション全体ではなく、ソリューションの個々のプロジェクトをビルドするためにビルドパイプラインで「Visual Studioビルド」タスクを設定すると、Azure DevOpsでこのエラーが発生して数時間かかりました。
これを行うと、DevOpsは、ビルドのターゲットにしたプロジェクトが参照するプロジェクトをビルドせず(または場合によっては、どのプロジェクトをビルドするか分からない)、そのため、それらのプロジェクトにはproject.jsonがありません.assetファイルが生成され、この問題が発生します。
私にとっての解決策は、VS Buildタスクの使用からMSBuildタスクへの切り替えでした。個々のプロジェクトにMSBuildタスクを使用すると、ビルドしているプロジェクトが参照するプロジェクトが正しくビルドされ、このエラーがなくなります。
単にNuGetパッケージを復元してもうまくいかない場合は、Tools - > Options - > NuGet Package Manager - > GeneralのPackage Restoreで "許可"を確認してください。 "不足しているパッケージをダウンロードするためのNuGet"がチェックされています。
Objフォルダとbinフォルダを削除した後、_ NuGet Packagesを再度OR 再構築してください。
答えに少し遅れますが、これは価値を付加するようです。エラーを見て - それはCI/CDパイプラインで発生しているようです。
"dotnet build"を実行するだけで十分です。
dotnetビルド
dotnet buildはデフォルトで "restore"を実行します。
上記の何も私のために働いた。しかし、単に 'bin'と 'obj'フォルダをすべて削除するだけでうまくいきました。
VSTSを使用している場合は、global.jsonファイルを確認してください。私は構文解析エラーの原因となっていたsdkバージョンをちょうど "2.2"として入力していました(しかしローカルでビルドするときではありません)。フルバージョン「2.2.104」を追加して問題を解決しました。
私がしたとき私のために - dotnetの復元はまだエラーが発生していました。
私は行きました
1 [ツール] - > [NuGet Package Maneger] - > [パッケージマネージャの設定] - > [Nuget Catcheのクリア]をクリックします。
2ドットネット復元
解決した問題.
この欠陥の原因:あなたはファイルエクスプローラで注入されたNugetを削除しなければなりません。解決策:システムからそのNugetを削除したら、次の場所から削除します。ツール=>オプション=> NuGetパッケージマネージャ=>パッケージソースの順に選択し、Microsoft Visual Studioオフラインパッケージオプションのチェックを外します。
その後、パッケージマネージャコンソールでdotnet restoreを実行して、管理者としてVSを実行します。
VS2017でドットネットコアにラムダを作成したときにエラーが発生しました。私にとってうまくいったのは、プロジェクトをアンロードしてからロードし直すことでした。
別の方法として、万が一Dropboxを使用している場合は、ファイル名のConflicted
を確認し、リポジトリで検索して競合しているファイルをすべて削除します。
ファイルを移動した場合、これが発生した可能性があります。
これは私のために働いた:このパッケージのソースを追加しました:マイクロソフトと。net https://www.nuget.org/api/v2/curated-feeds/microsoftdotnet/ そしてコンソールで "dotnet restore"を実行してください
@ mostafa-bouzari suggestion が助けにならない場合は、NuGetが復元できない理由について、エラーリストウィンドウまたは出力ウィンドウで注意深くチェックしてください。あなたがプロキシの背後にいる場合はネットの問題のために。
Azure DevOps/VSTS環境で私と同じ問題を抱えていて同じようなメッセージが表示される方へ:C:\Program Files\dotnet\sdk\2.2.104\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(208,5): Error NETSDK1004: Assets file '...\obj\project.assets.json' not found. Run a NuGet package restore to generate this file
Build SolutionのMSBuild引数に/t:Restore
を追加します。
私の場合、利用可能なパッケージソースに問題がありました。ローカルnugetリポジトリフォルダーを新しいパスに移動しましたが、Nuget Available Package Sourcesで更新しませんでした。パスの問題を修正したら、Available Package Sourcesでそれを更新し、その後すべて(nuget restorなど)が正常に機能しました。
3.4は.NET Coreのパッケージを復元する方法を理解していないため、私はNuGet.exeを3.4から4.9にアップグレードしました。