Acabei de converter minha biblioteca PCL em uma nova biblioteca .Net Standard e tenho alguns triângulos de aviso amarelo em minhas dependências mostradas abaixo:
Durante a conversão, ele trouxe todos os pacotes nuget, incluindo dependências, para que pudessem ser duplicados.
Como faço para descobrir o que os triângulos de aviso amarelos representam?
EDITAR
Criar registros:
Para evitar que o NuGet restaure pacotes durante a compilação, abra a caixa de diálogo Opções do Visual Studio, clique no nó Gerenciador de pacotes e desmarque 'Permitir que o NuGet baixe pacotes ausentes durante a compilação'. NU1605: Downgrade do pacote detectado: NUnit de 3.8.1 para 2.6.4. Consulte o pacote diretamente do projeto para selecionar uma versão diferente.
MyProj.UI.Tests -> MyProj.Core.Tests -> NUnit (> = 3.8.1)
MyProj.UI.Tests -> NUnit (> = 2.6.4) NU1605: Downgrade do pacote detectado: NUnit de 3.8.1 para 2.6.4. Consulte o pacote diretamente do projeto para selecionar uma versão diferente. MyProj.UI.Tests.iOS -> MyProj.UI.Tests -> MyProj.Core.Tests -> NUnit (> = 3.8.1) MyProj.UI.Tests.iOS -> NUnit (> = 2.6.4) NU1605: Downgrade do pacote detectado: NUnit de 3.8.1 para 2.6.4. Consulte o pacote diretamente do projeto para selecionar uma versão diferente.
MyProj.UI.Tests.Android -> MyProj.UI.Tests -> MyProj.Core.Tests -> NUnit (> = 3.8.1) MyProj.UI.Tests.Android -> NUnit (> = 2.6.4)
fonte
Respostas:
Por mais banal que pareça, tente reconstruir e reinicie o VS - e continue com o seu dia :)
fonte
executado
dotnet restore
antes de fazer qualquer manipulação complicada, você receberá muito mais informações do que na janela de erro ou explorador de soluções.Você pode executar este comando no console do gerenciador de pacotes:
fonte
No log de compilação, percebi o seguinte:
Portanto, desinstalei todos os pacotes listados como dependências para o
.Net Standard
nuget listado aqui:E os avisos amarelos desapareceram.
A partir daqui: https://blogs.msdn.microsoft.com/dotnet/2017/08/14/announcing-net-standard-2-0/
Também descobri que você pode usar a propriedade NoWarn como a seguir:
fonte
O triângulo amarelo significa que os arquivos físicos do pacote desapareceram e não estão mais disponíveis no disco rígido.
Isso geralmente acontece ao emitir uma
get latest version
solicitação no controle de origem no TFS, especialmente ao usar uma nova máquina, e você deseja obter o código do projeto do servidor TFS.Também pode ser causado pelo
low quality internet connection
qual quase sempre resultará em perda de dados ou arquivos baixados corrompidos.Se o problema estiver faltando alguns pacotes, você pode modificar o
packages.config
arquivo e remover esses pacotes dopackages.config
e reinstalar os pacotes ausentes por meio do gerenciador de pacotes nuget.Mas se o problema está faltando mais do que alguns pacotes, a melhor e mais rápida maneira que uso para recuperar pacotes ausentes é:
Packages
selecionando tudo, Observação NÃO copie a pasta Pacotes em si, apenas o conteúdo dentro da pastaPackages
pasta com sobrescrever itens existentes.Observe que problemas relacionados a arquivos ausentes de projetos são sempre difíceis de corrigir e dependem da experiência do desenvolvedor, portanto, não espere uma solução fácil para este.
Sobre a causa do erro, a Microsoft diz que é um bug, mas pode acontecer em qualquer versão do Visual Studio.
fonte
Apenas para fins de documentação para nova pessoa com esse problema, tente isso e você se lembrará de mim: D
Se você for para: Ferramentas> Administrador do NuGet> Configurações. e você marcou "Permitir nuget ...." e "verificar automaticamente ....".
A única coisa que você precisa fazer é clicar no botão "Limpar todos os cache (s) NuGet"
É isso, você não tem que editar as ideias do manual, o que pode ser perigoso, acredite, eu costumava precisar fazer algumas das etapas que descrevo aqui muito tempo, e tentar mais de 5 etapas da documentação oficial da microsoft para esse problema você pode verificar aqui: https://docs.microsoft.com/es-es/nuget/consume-packages/package-restore#restore-packages-automatically-using-visual-studio
Mas apenas limpar o cache resolve todos os problemas
fonte
Se você tiver o ícone de aviso, mas nenhum aviso e nada parecer realmente errado, clique com o botão direito do mouse no projeto> Descarregar projeto> clique com o botão direito no projeto novamente> Recarregar projeto. O ícone apareceu por um momento e depois foi limpo para mim no Visual Studio 2019. Isso evita uma reinicialização completa do Visual Studio.
fonte
Curiosamente, meu projeto .Net Core 3 precisava que eu simplesmente clicasse em "Carregar dependências do projeto" no contexto do projeto e, em seguida, o ícone de aviso desaparecia.
Captura de tela útil:
fonte
Acabei de atualizar o Visual Studio para 16.4.4 e o problema foi resolvido. A referência é fixa e não mais triângulo amarelo. Obrigado.
fonte
Enfrentei esse erro ao clonar o projeto. o principal motivo foi que os pacotes Nuget não puderam ser restaurados e eu encontrei uma solução tornando nuget.org apenas o recurso ativo.
Certifique-se de selecionar Nuget.org como único recurso ativo.
Espero que ajude
fonte
O sinal de exclamação amarelo geralmente é devido à falta de referência ou dll não suportado. Se você clonar um repositório, há chances de que muitos dos pacotes nugget mostrem uma exclamação amarela. Se você verificou que a versão do projeto é adequada e ainda assim o problema existe, você pode tentar a solução abaixo.
No console do gerenciador de pacotes, selecione o projeto no qual você está enfrentando este problema e digite o seguinte comando.
Isso forçará a reinstalação de todos os pacotes. Este comando não atualizará a versão dos pacotes NuGet, simplesmente forçará a reinstalação.
Essa solução funcionou no meu caso. Estou usando o VS2019. Espero que isso ajude outras pessoas também.
fonte
Pode haver um pacote que pode fazer com que todos os outros não sejam carregados. tente comentar os pacotes de .csproj um por um e descubra qual é o problema para restringi-lo.
fonte
Se eu tentar desinstalar
Microsoft.NETCore.Platforms
conforme indicado na resposta marcada , recebo o seguinte erro:Desinstalei os outros pacotes, mas ainda recebo o
NETSDK1023
erro:Agora eu editei meu .csproj e excluí a parte seguinte
<PackageReference Include="NETStandard.Library" Version="2.0.3" />
conforme indicado em https://aka.ms/sdkimplicitrefs em Recomendações :
Agora o aviso foi embora!
fonte
Nenhuma das opções acima funcionou para mim. Tive um projeto na solução com triângulos de aviso nas dependências de outros projetos na solução, o que causou muitos erros vermelhos no VS. No entanto, ele iria construir, executar e depurar muito bem. Eu finalmente descarreguei o projeto com um clique com o botão direito do mouse no nome do projeto na árvore da solução e, em seguida, recarreguei o projeto e tudo está feliz agora. Obrigado Visual Studio, smh. Estou usando o VS 2019 16.7.1
fonte
Reiniciar a máquina
Eu acredito que minha situação era que algum processo não estava liberando certas dlls após uma liberação de cache e, em seguida, qualquer aquisição de dlls falhou devido a esse bloqueio (?).
Ao reiniciar minha máquina e
donet restore
resolver o problema, eu poderia construir novamente sem o erro de pacote ausente.fonte
Se não houver nenhum problema com você para atualizar todos os pacotes NuGet, isso pode resolver esse problema.
Menu Ferramentas -> Gerenciador de Pacotes NuGet -> Gerenciar Pacotes Nuget para Solução . Quando este menu aparecer, clique na guia Atualizar e clique no botão Atualizar tudo .
fonte