Je viens de convertir ma bibliothèque PCL en une nouvelle bibliothèque .Net Standard et j'ai quelques triangles d'avertissement jaunes sur mes dépendances ci-dessous:
Au cours de la conversion, tous les packages nuget ont été transférés, y compris les dépendances, de sorte qu'il puisse s'agir de dulicates.
Comment savoir ce que représentent les triangles d'avertissement jaunes?
ÉDITER
Créer des journaux:
Pour empêcher NuGet de restaurer des packages pendant la génération, ouvrez la boîte de dialogue Options de Visual Studio, cliquez sur le nœud Gestionnaire de package et décochez «Autoriser NuGet à télécharger les packages manquants pendant la génération». NU1605: rétrogradation de package détectée: NUnit de 3.8.1 à 2.6.4. Référencez le package directement à partir du projet pour sélectionner une version différente.
MyProj.UI.Tests -> MyProj.Core.Tests -> NUnit (> = 3.8.1)
MyProj.UI.Tests -> NUnit (> = 2.6.4) NU1605: rétrogradation de package détectée: NUnit de 3.8.1 à 2.6.4. Référencez le package directement à partir du projet pour sélectionner une version différente. MyProj.UI.Tests.iOS -> MyProj.UI.Tests -> MyProj.Core.Tests -> NUnit (> = 3.8.1) MyProj.UI.Tests.iOS -> NUnit (> = 2.6.4) NU1605: Déclassement du package détecté: NUnit de 3.8.1 à 2.6.4. Référencez le package directement à partir du projet pour sélectionner une version différente.
MyProj.UI.Tests.Android -> MyProj.UI.Tests -> MyProj.Core.Tests -> NUnit (> = 3.8.1) MyProj.UI.Tests.Android -> NUnit (> = 2.6.4)
la source
Réponses:
Aussi banal que cela puisse paraître, essayez de reconstruire puis de redémarrer VS - et continuez votre journée :)
la source
exécutez
dotnet restore
avant de faire toute manipulation compliquée, vous allez recevoir beaucoup plus d'informations que dans la fenêtre d'erreur ou l'explorateur de solutions.Vous pouvez exécuter cette commande dans la console du gestionnaire de package:
la source
Dans le journal de construction, j'ai remarqué ceci:
Je suis donc allé désinstaller tous les paquets qui étaient listés comme dépendances pour le
.Net Standard
nuget listé ici:Et les avertissements jaunes ont disparu.
De là: https://blogs.msdn.microsoft.com/dotnet/2017/08/14/announcing-net-standard-2-0/
J'ai également trouvé que vous pouvez utiliser la propriété NoWarn comme ci-dessous:
la source
Le triangle jaune signifie que le ou les fichiers physiques du package ont disparu et ne sont plus disponibles sur le disque dur.
Cela se produit généralement lors de l'émission d'une
get latest version
requête sur le contrôle de code source dans TFS, en particulier lors de l'utilisation d'une nouvelle machine, et que vous souhaitez obtenir le code de votre projet à partir du serveur TFS.Cela peut également être causé par
low quality internet connection
une perte de données ou des fichiers téléchargés corrompus.Si le problème manque quelques packages, vous pouvez modifier le
packages.config
fichier et supprimer ces packages dupackages.config
et réinstaller les packages manquants via le gestionnaire de packages nuget.Mais si le problème manque plus que quelques paquets, le moyen le meilleur et le plus rapide que j'utilise pour récupérer les paquets manquants est de:
Packages
en sélectionnant tout, Remarque ne copiez PAS le dossier Packages lui-même uniquement le contenu à l'intérieur du dossierPackages
dossier avec écraser les éléments existants.Notez que ces problèmes liés aux fichiers manquants dans les projets sont toujours difficiles à résoudre et dépendent de l'expérience du développeur, alors ne vous attendez pas à une solution facile pour celui-ci.
Sur la cause de l'erreur, Microsoft dit qu'il s'agit d'un bogue, mais cela peut se produire sur n'importe quelle version de Visual Studio.
la source
Juste à des fins de documentation pour une nouvelle personne avec ce problème, essayez ceci et vous vous souviendrez de moi: D
Si vous allez dans: Outils> Administrateur NuGet> Configurations. et vous avez "Autoriser nuget ...." et "vérifier automatiquement ...." vérifiés.
La seule chose que vous devez faire est de cliquer sur le bouton "Effacer tous les cache (s) NuGet"
Voilà, vous n'avez pas besoin de modifier les pensées manuelles qui peuvent être dangereuses, croyez-moi, j'ai l'habitude de faire certaines des étapes que de décrire ici beaucoup de temps, et d'essayer plus de 5 étapes de la documentation officielle de Microsoft pour ce problème, vous pouvez le vérifier ici: https://docs.microsoft.com/es-es/nuget/consume-packages/package-restore#restore-packages-automatically-using-visual-studio
Mais le simple nettoyage du cache résout tous les problèmes
la source
Si vous avez l'icône d'avertissement mais aucun avertissement et que rien ne semble vraiment être faux, cliquez avec le bouton droit sur le projet> Décharger le projet> cliquez à nouveau avec le bouton droit sur le projet> Recharger le projet. L'icône est apparue pendant un moment, puis a été effacée pour moi dans Visual Studio 2019. Cela évite un redémarrage complet de Visual Studio.
la source
Curieusement, mon projet .Net Core 3 nécessitait que je clique simplement sur "Charger les dépendances du projet" dans le contexte du projet, puis l'icône d'avertissement a disparu.
Capture d'écran utile:
la source
Je viens de mettre à jour Visual Studio vers 16.4.4 et le problème a été résolu. La référence est fixe et plus de triangle jaune. Merci.
la source
J'ai rencontré cette erreur lorsque j'ai cloné le projet. la raison principale était que les packages Nuget ne pouvaient pas être restaurés et je trouve une solution en faisant de nuget.org la seule ressource active.
Assurez-vous de sélectionner Nuget.org comme seule ressource active.
J'espère que ça aide
la source
Le signe d'exclamation jaune est généralement dû à une référence manquante ou à une DLL non prise en charge. Si vous clonez un référentiel, il y a des chances que de nombreux packages de nugget affichent une exclamation jaune. Si vous avez vérifié que la version du projet est correcte et que le problème persiste, vous pouvez essayer la solution ci-dessous.
Dans la console du gestionnaire de packages, sélectionnez le projet dans lequel vous rencontrez ce problème, puis tapez la commande suivante.
Cela forcera la réinstallation de tous les packages. Cette commande ne mettra pas à jour la version des packages NuGet, elle forcera simplement à les réinstaller.
Cette solution a fonctionné dans mon cas. J'utilise VS2019. J'espère que cela aidera également les autres.
la source
Il peut y avoir 1 paquet qui peut empêcher le chargement de tous les autres. essayez de commenter les paquets de .csproj un par un et trouvez celui qui pose problème pour le réduire.
la source
Si j'essaye de désinstaller
Microsoft.NETCore.Platforms
comme indiqué dans la réponse marquée, j'obtiens l'erreur suivante:J'ai désinstallé les autres packages, mais j'obtiens toujours l'
NETSDK1023
erreur:Maintenant, j'ai édité mon .csproj et supprimé la partie suivante
<PackageReference Include="NETStandard.Library" Version="2.0.3" />
comme indiqué dans https://aka.ms/sdkimplicitrefs sous Recommandations :
Maintenant, l'avertissement est parti!
la source
Aucun de ces éléments n'a fonctionné pour moi. J'avais un projet dans la solution avec des triangles d'avertissement sur les dépendances à d'autres projets de la solution, ce qui a causé beaucoup d'erreurs rouges dans VS. Cependant, il serait très bien construit, exécuté et débogué. J'ai finalement déchargé le projet avec un clic droit sur le nom du projet dans l'arborescence des solutions, puis rechargé le projet et tout est maintenant heureux. Merci Visual Studio, smh. J'utilise VS 2019 16.7.1
la source
Redémarrer la machine
Je crois que ma situation était que certains processus ne libéraient pas certaines dll après un vidage du cache, puis toute acquisition de dll a échoué en raison de ce verrou (?).
En redémarrant ma machine et en
donet restore
résolvant le problème, je pourrais reconstruire sans l'erreur de package manquante.la source
S'il n'y a aucun problème avec vous pour mettre à jour tous les packages NuGet qui peuvent résoudre ce problème.
Menu Outils -> Gestionnaire de packages NuGet -> Gérer les packages Nuget pour la solution . Lorsque ce menu apparaît, cliquez sur l' onglet Mettre à jour et cliquez sur le bouton Tout mettre à jour .
la source