Acabo de convertir mi biblioteca PCL a una nueva biblioteca .Net Standard y tengo algunos triángulos de advertencia amarillos en mis dependencias que se muestran a continuación:
Durante la conversión, trajo todos los paquetes nuget, incluidas las dependencias, para que pudieran ser dulicates.
¿Cómo averiguo qué representan los triángulos de advertencia amarillos?
EDITAR
Registros de compilación:
Para evitar que NuGet restaure paquetes durante la compilación, abra el cuadro de diálogo Opciones de Visual Studio, haga clic en el nodo Administrador de paquetes y desmarque 'Permitir que NuGet descargue los paquetes que faltan durante la compilación'. NU1605: degradación de paquete detectada: NUnit de 3.8.1 a 2.6.4. Haga referencia al paquete directamente desde el proyecto para seleccionar una versión diferente.
MyProj.UI.Tests -> MyProj.Core.Tests -> NUnit (> = 3.8.1)
MyProj.UI.Tests -> NUnit (> = 2.6.4) NU1605: Paquete detectado degradado: NUnit de 3.8.1 a 2.6.4. Haga referencia al paquete directamente desde el proyecto para seleccionar una versión diferente. MyProj.UI.Tests.iOS -> MyProj.UI.Tests -> MyProj.Core.Tests -> NUnit (> = 3.8.1) MyProj.UI.Tests.iOS -> NUnit (> = 2.6.4) NU1605: Cambio de categoría del paquete detectado: NUnit de 3.8.1 a 2.6.4. Haga referencia al paquete directamente desde el proyecto para seleccionar una versión diferente.
MyProj.UI.Tests.Android -> MyProj.UI.Tests -> MyProj.Core.Tests -> NUnit (> = 3.8.1) MyProj.UI.Tests.Android -> NUnit (> = 2.6.4)
fuente
Respuestas:
Por trillado que parezca, intente reconstruir y luego reiniciar VS, y continúe con su día :)
fuente
ejecutar
dotnet restore
antes de realizar cualquier manipulación complicada, se le proporcionará mucha más información que en la ventana de error o el explorador de soluciones.Puede ejecutar este comando en la consola del administrador de paquetes:
fuente
En el registro de compilación, me di cuenta de esto:
Por lo tanto, fui y desinstalé todos los paquetes que estaban listados como dependencias para el
.Net Standard
nuget enumerado aquí:Y las advertencias amarillas desaparecieron.
Desde aquí: https://blogs.msdn.microsoft.com/dotnet/2017/08/14/announcing-net-standard-2-0/
También descubrí que puede usar la propiedad NoWarn como se muestra a continuación:
fuente
El triángulo amarillo significa que los archivos físicos del paquete se han ido y ya no están disponibles en el disco duro.
Esto suele suceder cuando se emite una
get latest version
solicitud de control de código fuente en TFS, especialmente cuando se usa una máquina nueva y desea obtener el código de su proyecto del servidor TFS.También puede ser causado por lo
low quality internet connection
cual casi siempre dará como resultado la pérdida de datos o archivos descargados dañados.Si al problema le faltan un par de paquetes, puede modificar el
packages.config
archivo y eliminar estos paquetes delpackages.config
y volver a instalar los paquetes faltantes a través del administrador de paquetes nuget.Pero si al problema le faltan más de unos pocos paquetes, la mejor y más rápida forma que utilizo para recuperar los paquetes que faltan es mediante:
Packages
seleccionando todo, tenga en cuenta que NO copie la carpeta de Paquetes en sí, solo el contenido dentro de la carpetaPackages
carpeta con sobrescribir los elementos existentes.Tenga en cuenta que estos problemas relacionados con archivos faltantes de proyectos siempre son difíciles de solucionar y dependen de la experiencia del desarrollador, por lo que no espere una solución fácil para este.
Sobre la causa del error, Microsoft dice que es un error, pero puede ocurrir en cualquier versión de Visual Studio.
fuente
Solo con fines de documentación para personas nuevas con este problema, intente esto y me recordará: D
Si va a: Herramientas> Administrador de NuGet> Configuraciones. y ha marcado "Permitir nuget ...." y "comprobar automáticamente ....".
Lo único que tiene que hacer es hacer clic en el botón "Borrar todos los cachés NuGet"
Eso es todo, no tienes que editar los pensamientos manuales que pueden ser peligrosos, créeme, solía tener que hacer algunos de los pasos que se describen aquí mucho tiempo, y probar más de 5 pasos de la documentación oficial de microsoft para ese problema puede verificarlo aquí: https://docs.microsoft.com/es-es/nuget/consume-packages/package-restore#restore-packages-automatically-using-visual-studio
Pero solo limpiar la caché resuelve todos los problemas
fuente
Si tiene el icono de advertencia pero no hay advertencias y nada parece estar realmente mal, haga clic con el botón derecho en el proyecto> Descargar proyecto> haga clic con el botón derecho en el proyecto nuevamente> Recargar proyecto. El icono apareció por un momento y luego se borró para mí en Visual Studio 2019. Esto evita un reinicio completo de Visual Studio.
fuente
Curiosamente, mi proyecto .Net Core 3 necesitaba que simplemente hiciera clic en "Cargar dependencias del proyecto" desde el contexto del proyecto, luego el icono de advertencia desapareció.
Captura de pantalla útil:
fuente
Acabo de actualizar Visual Studio a 16.4.4 y el problema se resolvió. La referencia es fija y no más triángulo amarillo. Gracias.
fuente
Enfrenté este error cuando cloné el proyecto. la razón principal fue que los paquetes de Nuget no se pudieron restaurar y encuentro una solución haciendo que nuget.org sea el único recurso activo.
Asegúrese de seleccionar Nuget.org como único recurso activo.
Espero eso ayude
fuente
El signo de exclamación amarillo generalmente se debe a que falta una referencia o una dll no compatible. Si clona un repositorio, es posible que muchos de los paquetes de nugget muestren una exclamación amarilla. Si ha verificado que la versión del proyecto es correcta y el problema persiste, puede probar la siguiente solución.
En la consola del administrador de paquetes, seleccione el proyecto en el que se enfrenta a este problema y luego escriba el siguiente comando.
Esto obligará a reinstalar todos los paquetes. Este comando no actualizará la versión de los paquetes NuGet, simplemente forzará la reinstalación.
Esta solución funcionó en mi caso. Estoy usando VS2019. Espero que esto ayude a otros también.
fuente
Podría haber 1 paquete que puede hacer que no se carguen todos los demás. intente comentar los paquetes de .csproj uno por uno y descubra cuál es el problema para reducirlo.
fuente
Si trato de desinstalar
Microsoft.NETCore.Platforms
como se indica en la respuesta marcada, aparece el siguiente error:Desinstalé los otros paquetes, pero sigo recibiendo el
NETSDK1023
error:Ahora edité mi .csproj y eliminé la siguiente parte
<PackageReference Include="NETStandard.Library" Version="2.0.3" />
como se indica en https://aka.ms/sdkimplicitrefs en Recomendaciones :
¡Ahora la advertencia se ha ido!
fuente
Ninguno de los anteriores funcionó para mí. Tenía un proyecto en la solución con triángulos de advertencia en las dependencias de otros proyectos en la solución que causaron muchos errores rojos en VS. Sin embargo, compilaría, ejecutaría y depuraría muy bien. Finalmente descargué el proyecto con un clic derecho en el nombre del proyecto en el árbol de la solución, y luego volví a cargar el proyecto y todo está feliz ahora. Gracias Visual Studio, smh. Estoy usando VS 2019 16.7.1
fuente
Reiniciar la máquina
Creo que mi situación era que algún proceso no liberaba ciertas DLL después de un vaciado de caché y luego fallaba cualquier adquisición de DLL debido a ese bloqueo (?).
Al reiniciar mi máquina y hacerlo,
donet restore
resolvió el problema y pude compilar nuevamente sin el error del paquete faltante.fuente
Si no hay ningún problema con usted, actualice todos los paquetes NuGet que pueden resolver este problema.
Menú Herramientas -> Administrador de paquetes NuGet -> Administrar paquetes Nuget para la solución . Cuando aparezca este menú, haga clic en la pestaña Actualizar y haga clic en el botón Actualizar todo .
fuente