Todas as compilações do meu projeto falham, mas não vejo nenhum erro. Tentei limpar e reconstruir, mas não funcionou.
Alterei o detalhamento de saída do MSBuild para 'Diagnóstico' esperando que isso me ajudasse a identificar o problema e agora estou preso. Esta é a aparência da saída:
1>Project 'ProjectMM.Data.Models' is not up to date. Input file 'C:\Projects\ProjectMM\ProjectMM.Data.Models\ProjectMM.Data.Models.csproj' is modified after output file 'C:\Projects\ProjectMM\ProjectMM.Data.Models\bin\Debug\ProjectMM.Data.Models.pdb'.
All packages are already installed and there is nothing to restore.
1>------ Build started: Project: ProjectMM.Data.Models, Configuration: Debug Any CPU ------
2>Project 'ProjectMM.Data' is not up to date. Input file 'C:\Projects\ProjectMM\ProjectMM.Data\ProjectMM.Data.csproj' is modified after output file 'C:\Projects\ProjectMM\ProjectMM.Data\bin\Debug\ProjectMM.Data.pdb'.
2>------ Build started: Project: ProjectMM.Data, Configuration: Debug Any CPU ------
3>Project 'ProjectMM' is not up to date. Input file 'c:\projects\projectmm\projectmm\app_start\bundleconfig.cs' is modified after output file 'C:\Projects\ProjectMM\ProjectMM\bin\ProjectMM.pdb'.
3>------ Build started: Project: ProjectMM, Configuration: Debug Any CPU ------
========== Build: 0 succeeded, 3 failed, 0 up-to-date, 0 skipped ==========
visual-studio
visual-studio-2015
build
msbuild
Rob Greenlee
fonte
fonte
Respostas:
Eu tive o mesmo problema e fechar e reabrir o Visual Studio resolve tudo.
Eu também tentei a solução de limpeza e a falha de limpeza.
Pode haver outras situações em que isso não funcione, mas, no meu caso, reiniciar resolveu isso para mim.
fonte
É possível que você não esteja vendo todos os erros de compilação.
Alterando a lista suspensa após o ícone "Mensagens" de "Build + Intellisense" para "Build Only", você poderá ver erros lançados durante a compilação que não são detectados pelo Intellisense. Veja a imagem abaixo:
fonte
Tenho visto instâncias regulares do VS2015 relatando "falha de construção", mas não mostrando nenhum erro na janela de erro. Vindo de um fundo de linha de comando antigo, finalmente olhei para a janela de saída. A janela de saída mostrou os erros do compilador relatando, mas esses erros não estavam sendo capturados na janela de erro. Nunca vi esse problema no VS2013.
O fechamento usual do VS e sua reabertura não eliminou esta condição. (No VS2013, essa era uma maneira comum de chutar o XAML intellisense para trás e fazer com que parasse de se fixar em um "erro" que havia sido corrigido.)
Até agora, isso sempre esteve relacionado a erros de compilação em um arquivo CS de página XAML. Não me lembro de tê-lo visto em um arquivo CS sem página.
Até que alguém decida ir verificar a janela de saída, coisas como relatórios de intellisense na janela de erro referências inválidas a objetos no XAML, mas nenhum erro do compilador sendo mostrado na janela de erro pode causar MUITA confusão, pois "parece" como os erros são o intellisense relatando erros XAML. Mas eles realmente não são. Os erros XAML são apenas sintomas de arquivos CS falhando ao compilar, mas não tendo seus erros relatados na janela de erro.
fonte
Excluir a
.vs
pasta oculta funcionou para mim no VS2015.(Observe que é aqui que os arquivos SUO estão agora)
fonte
Isso pode acontecer quando você faz referência a um projeto de versão de estrutura .net diferente (v4.5.2 vs v4.5 no meu caso). Corrigir isso resolverá seu problema.
fonte
O que aconteceu comigo foi mudar o fuso horário no computador para +5: 30 e depois voltar para -5: 00 é o que confundiu o VS. Quando reiniciei o VS, ele funcionou bem novamente.
fonte
Verifique todas as versões do Framework do seu projeto e certifique-se de que são todas iguais ou pelo menos que o projeto A não faz referência ao projeto B quando a versão do .NET Framework do projeto B é superior.
fonte
Tive este problema com VS2015 Update 3 RC e Xamarin (projeto compartilhado .Forms).
O compilador não para, os erros são mostrados apenas na janela de saída.
Isso apenas para projetos Xamarin (com projetos VB.NET tudo funcionou como esperado) ...
Para tentar encontrar o motivo do problema, eu mudei o Build Output no VS:
- menu "Ferramentas - Opções"
- no painel esquerdo : "Projetos e soluções: construir e executar":
- alterar "Verbosidade de saída do MSBuild" de "Mínimo" para "Diagnóstico"
Depois de fazer isso, o compilador parou e o erro foi mostrado.
Depois disso, ajustei a opção de "Diagnóstico" para "Mínimo" (como era antes) e ... funcionou também com "Mínimo" (com certeza, eu também reiniciei o VS) ...
Então .. parece (pelo menos no meu caso) que apenas mudar (tocar) a configuração (MSBuild Output Verbosity ") resolveu o problema e que este é um bug no VS e / ou no Software de integração Xamarin ...
fonte
Não sei se sou o único que enfrenta esse problema.
No meu caso, quando abri o Visual Studio, o fuso horário estava em GMT + 1: 00 e a compilação foi bem-sucedida. Então mudei o fuso horário para GMT + 5: 30, e então, sem reiniciar o Visual Studio, tentei executar o aplicativo, mas a compilação falhou sem nenhum erro ou aviso.
Mudei de volta o fuso horário para GMT + 1: 00 e a compilação foi bem-sucedida sem nenhum erro.
fonte
O que eu fiz (depois de tudo o que foi dito acima, e ainda não estava funcionando) foi percorrer todas as pastas de lixeira e limpá-las todas (ou seja, os projetos referenciados também).
Isso funcionou para mim, espero que funcione para você também.
fonte
Eu tive esse problema e descobri que estava
using
apontando para um namespace vazio. Remover essausing
cláusula resolveu o problemafonte
Verifique os avisos ..
Eu tinha a nova biblioteca de classes com destino .Net Framework 4.5 enquanto o projeto de referência era 4.0, o que causou problema de referência.
Depois de modificar a biblioteca de classes com o target .Net Framework 4.0 funcionou corretamente.
fonte
Nada das respostas acima me ajudou. Depois de muitos experimentos, finalmente descobri que o problema é uma referência do Microsoft.Net.Compilers v2.10.0 em um dos projetos. O VS 2015 usa o MSBuild v14, que não oferece suporte a essa versão do Microsoft.Net.Compilers.
fonte
Para mim, esse problema estava relacionado a uma configuração personalizada do conjunto de regras do CodeAnalysis " IncludeAll ".
Parece que o compilador observa esta configuração:
Mas o IntelliSense executou a AÇÃO padrão na ID da regra que era "Aviso". Isso explicaria o comportamento visto por @RobertHarvey onde você filtra a saída por Build Only e mostra como um ERROR , mas se você filtrar por Intellisene Only mostra como WARNING . Filtrar a saída pelo padrão Build + Intellisense parece não determinístico!
Minha correção foi chamar explicitamente a regra de que eu queria ser um aviso como um aviso.
Isso é potencialmente um problema com o Intellisense não observando a opção IncludeAll . Veja https://github.com/dotnet/roslyn/issues/7400
fonte
Isso também pode acontecer ao migrar um projeto para o Visual Studio 2015 com um Framework mais antigo. Verifique seus avisos em sua lista de erros. Você pode ver algo como o projeto é atualmente .NET versão 2.0 e requer .NET 3.5 ou superior. Se você encontrar um aviso semelhante, vá para as propriedades do seu projeto e direcione o .NET Framework necessário.
fonte
Por favor, verifique os avisos. Às vezes, a construção falhava por causa de algum tipo de aviso também.
fonte
Ao abrir uma solução, gere-a, posso ver alguns erros de build ou avisos relatados na "guia Saída", enquanto a "guia Erro" não relata nenhum problema.
Você pode ver que a configuração da "guia Erro" está OK ("Somente construção" e "Solução inteira" selecionadas).
Observe que, após uma investigação profunda, identifiquei que isso só ocorre se a "guia Erro" ainda não foi exibida quando você inicia a compilação!
Se você ativou a "guia Erro" antes de fazer a compilação (ou se era a guia atual quando você iniciou o Visual), os erros / avisos recém-encontrados aparecerão corretamente:
É como se a "guia Erro" fosse inicializada apenas quando se tornasse visível (o que pode ser verdade, pois leva mais tempo para aparecer na primeira vez que você clica nela ...) e, se não foi, ela não coleta compilação resultados...
Até agora, não tendo uma resposta melhor para este problema do que " ativar a guia Erro antes de construir ".
E aposto que é por isso que "reiniciar o VS" às vezes funciona. Você vê que a "guia Erro" está vazia, fecha e reabre o VS e, em seguida, a "Guia Erro" é exibida por padrão, pois o VS restaurou a guia ativa atual da sessão anterior. Você constrói e agora a "guia Erro" é preenchida ...! Você apenas teve sorte.
Observação: relatou um bug do VS: https://connect.microsoft.com/VisualStudio/feedback/details/3132689
fonte
Para mim, a compilação falhou sem erros, mas após algumas investigações leves descobri que a referência para MSHTML não foi encontrada pelo VS.
O comportamento apareceu após uma atualização para o Windows 10. Para corrigi-lo, você precisa registrar o assembly do GAC. Para saber como fazer isso, vá para esta resposta DLL MSHTML no Windows 10 , onde encontrei minha resposta.
fonte
Retirado desta resposta
Depois de fazer isso, descobri o verdadeiro motivo que era na verdade um erro com projetos de dependência. Eu projetei que eu estava dependendo foi construído para uma estrutura diferente (mais recente) que a minha. Criando assim o problema. Os erros só foram exibidos quando coloquei o Verbosidade de Saída para Diagnóstico
fonte
Para mim, era uma propriedade anexada desonestos. O problema não era necessariamente que eu não pudesse ver um erro; o erro foi o seguinte:
Inicialmente, a compilação travaria e não mostraria nenhum erro, a menos que você tentasse fechar o Visual Studio. Depois de reiniciar, ele travaria por um longo período durante a construção e, em seguida, exibia a mensagem acima.
A exclusão da
.vs
pasta oculta , a solução de reconstrução / limpeza e a reinicialização do Visual Studio não funcionaram. A remoção da propriedade anexada sim; logo, pode ser um código real em algum lugar que não está funcionando corretamente.Como último recurso, eu removeria todas as alterações recentes, uma por uma, até que o problema fosse resolvido, pois nenhuma das soluções aqui ajudou.
Atualizar
Como estou acostumado a desenvolver aplicativos WPF tradicionais, não percebi que não é possível "encadear" namespaces XAML usando
.
s com UWP. Eu estava tentando definir uma propriedade anexada usandoConsiderando que, deve ser apenas
Não é tão bonito quanto eu gosto, mas é o único jeito de morrer, aparentemente.
fonte
O que funcionou para mim:
Fechar todos os documentos resolveu o problema para mim. (Mesma solução se o intelliSense parar de funcionar)
(clique com o botão direito na guia - Fechar todos os documentos)
fonte
Tente isto
Excluir
"mstscax.dll"
das dependências funcionou para mim.fonte
Problema de nicho: encontrei o mesmo problema agora. Nenhuma das respostas acima pareceu ajudar.
O problema era para um programa de console, não é possível marcar o método Main () como assíncrono ** que é o que eu estava fazendo. Não tenho certeza, por que o Visual Studio não pôde especificar por que exatamente o projeto não estava sendo compilado (recebo 0 erros e 0 avisos todas as vezes). Estou usando o Visual Studio 2015 Enterprise.
Correção: a solução para isso está aqui .
fonte
Depois de atualizar um arquivo dll, descobriu-se que o novo arquivo tinha como alvo uma versão superior do .NET Framework. A solução foi ir para Propriedades do projeto e alterar a estrutura de destino para a versão apropriada.
fonte
MSBuild.exe foi alterado no diretório (C: \ Arquivos de programas (x86) \ MSBuild \ 14.0 \ Bin)
então eu apenas substituo o MSBuild.exe de outro pc que tenha vs2015.
Agora está funcionando bem.
fonte
Eu encontrei a solução mudando o .NET Framework de 4.5.2 para 4.0.
O problema foi causado por uma referência que não era compatível com a estrutura selecionada atualmente.
fonte
Acabei de limpar meus filtros e funcionou para mim. O ícone para limpar todos os filtros fica próximo à caixa de mensagens.
fonte
Comece um novo projeto. Copie todo o seu código até o namespace abaixo ConsoleApp38450983450.
Cole no novo projeto abaixo do namespace ScrewedUpConsoleApp102343
Construa e execute perfeitamente
fonte
Você deve definir a caixa de combinação no lado direito da lista de erros, em 'Solução Inteira' para ver todos os erros. insira a descrição da imagem aqui
fonte