web-dev-qa-db-fra.com

Fichier d'assets project.assets.json introuvable. Exécuter une restauration de paquet NuGet

J'essaie d'utiliser nopCommerce (qui est écrit en .NET Core), mais lorsque je veux exécuter le projet, je suis confronté à un problème. 

Fichier de ressources ~\obj\project . assets.json 'not found. Exécutez une restauration de package NuGet pour générer ce fichier. Nop.Web.MVC.Testsote

lorsque j'utilise le clic droit sur la solution et que je sélectionne Restaurer les packages de nugets, le message suivant s'affiche: 

Tous les packages sont déjà installés et il n'y a rien à restaurer.

mais ces 52 erreurs sont toujours présentes et dansOutils -> Gestionnaire de paquets NuGet -> Gérer les paquets NuGet pour la solutionrien n’est installé sur la solution.

57
NeverTrust

Pour corriger cette erreur depuis Outils> Gestionnaire de paquets NuGet> Console du gestionnaire de paquets, exécutez simplement:

dotnet restore

L'erreur se produit parce que le dotnet cli ne crée pas initialement tous les fichiers requis. Faire la restauration par dotnet ajoute les fichiers requis.

130
Mostafa Bouzari

Dans mon cas, l'erreur était le référentiel GIT. Il y avait des espaces dans le nom, rendant mon projet incapable de restaurer 

Si tel est votre problème, il suffit de renommer le référentiel GIT lorsque vous clonez

git clone http://Your%20Project%20With%20Spaces newprojectname
28

Fermer et réouvrir Visual Studio a résolu ce problème pour moi, une fois que je m'étais assuré que les packages NuGet avaient été restaurés, comme indiqué dans les autres réponses publiées ici.

12
OutstandingBill

Si la «restauration par réseau de points» ne fonctionne pas, procédez comme suit:

(1) Visual Studio >> Outils >> Options >> Nuget Manager >> Sources de package (2) Désélectionnez toutes les sources de package tierces . (3) Reconstruisez la solution.

6
prisan

J'ai perdu plusieurs heures à cause de cette erreur dans Azure DevOps lorsque j'ai défini la tâche "Création de Visual Studio" dans un pipeline de génération afin de créer un projet individuel dans ma solution, plutôt que la solution complète.

Cela signifie que DevOps ne construit pas non plus (ou peut-être même, je ne sais pas lequel) des projets référencés par le projet que vous avez ciblé pour la construction, et par conséquent, ces projets n'auront pas leur project.json. fichiers .asset générés, ce qui provoque ensuite ce problème.

La solution pour moi consistait à éviter l'utilisation de la tâche VS Build par la tâche MSBuild. L'utilisation de la tâche MSBuild pour un projet individuel génère correctement tous les projets référencés par le projet que vous construisez et élimine cette erreur.

2
tomRedox

Si simplement restaurer les paquets NuGet ne fonctionne pas, assurez-vous dans Outils -> Options -> Gestionnaire de paquets NuGet -> Général sous Restauration du paquet que le "Autoriser NuGet pour télécharger les paquets manquants "est cochée.

Puis Restaurez les paquets NuGet encore OR justeREBUILDaprès avoir supprimé les dossiers obj et bin.

1
NexX

Sélectionnez Outils > NuGet Package Manager > Console du gestionnaire de packages  

Et ensuite Run:

dotnet restore <project or solution name>
1
Andre Mesquita

peu en retard à la réponse mais semble que cela va ajouter de la valeur. En regardant l'erreur - elle semble se produire dans le pipeline CI/CD.

Lancer simplement "dotnet build" sera suffisant. 

dotnet build

dotnet build exécute la "restauration" par défaut.

1
Sunny Sharma

Rien ci-dessus n'a fonctionné pour moi. Mais le simple fait de supprimer tous les dossiers 'bin' et 'obj' a fait l'affaire.

1
alexbk66

Lorsque vous utilisez VSTS, vérifiez votre fichier global.json. J'étais entré dans la version sdk en tant que "2.2", ce qui provoquait une erreur d'analyse (mais pas lors de la construction locale). L'ajout de la version complète, "2.2.104" a résolu le problème.

1
Rob Minnis

Dans Visual Studio 2017, veuillez suivre les étapes suivantes:

1) sélectionnez Tool => Options => NuGet Package Manager => Sources de paquet puis décochez Visual Studio Packages hors ligne Option .  enter image description here

2) maintenant, ouvrez Outil => Gestionnaire de paquet NuGet => Console du gestionnaire de paquet . 3) exécutez la commande dans PM> restauration de dotnet.

J'espère que ça marche ...

1
Manoj Gupta

Pour moi, quand je le faisais - une erreur de restauration de dotnet se produisait encore.

Je suis allé à

1 outil -> Gestionnaire de paquets NuGet -> Paramètres du gestionnaire de paquets -> cliquez sur "Effacer le Nuget Catche (s)"

2 restauration de dotnet

problèmes résolus.

1
Speed

Cause de ce défaut: vous devez supprimer le Nuget injecté dans l'explorateur de fichiers . Solution: Une fois ce Nuget supprimé de votre système, supprimez-le de l'emplacement suivant . Sélectionnez Outil => Options => NuGet Package Manager =. > Sources de paquetages puis décochez l’option Microsoft Visual Studio Offline Packages 

0
balaji s

exécutez votre VS en tant qu'administrateur après que, dans la console du gestionnaire de paquets, exécutez la restauration par dotnet 

0
Lucas Brito

J'ai eu l'erreur quand j'ai créé un lambda dans le noyau net en VS2017. Ce qui a fonctionné pour moi a été de décharger le projet et de le charger. 

0
boms

Une autre, si par hasard vous utilisez Dropbox, recherchez Conflicted dans les noms de fichiers, effectuez une recherche dans votre référentiel et supprimez tous les fichiers en conflit.

Cela est peut-être arrivé si vous avez déplacé les fichiers.

0
Jose A

Cela a fonctionné pour moi: ajout de la source du paquet: Microsoft et .net https://www.nuget.org/api/v2/cured-feeds/microsoftdotnet/ puis lancez "dotnet restore" dans la console

0
Henry L

Si @ mostafa-bouzari suggestion ne vous aide pas, vérifiez attentivement les fenêtres «Liste des erreurs» ou «Sortie» pour savoir pourquoi NuGet ne peut pas restaurer, par exemple à cause d'un problème de réseau si vous êtes derrière un proxy.

0
flam3

À ceux qui ont le même problème que moi dans l'environnement Azure DevOps/VSTS et rencontrant un message similaire: 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

Ajoutez /t:Restore à vos arguments MSBuild dans la solution de génération.

0
taylorswiftfan

Dans mon cas, j'ai eu un problème avec les sources de paquets disponibles. J'avais déplacé le dossier du référentiel de nuget local vers un nouveau chemin, mais je ne l'avais pas mis à jour dans les sources de paquets disponibles pour Nuget. Lorsque j'ai corrigé le problème de chemin, mettez-le à jour dans les sources de paquetages disponibles, puis tout fonctionnera correctement (restauration du nuget, etc.).

0
user11990436

Pour moi, j'ai mis à niveau NuGet.exe de 3.4 à 4.9 car 3.4 ne comprend pas comment restaurer des packages pour .NET Core.

Pour plus de détails, veuillez consulter restauration dotnet vs restauration de nuget avec teamcity

0
user8128167