IT

Visual Studio 2015 프로젝트 빌드가 실패했지만 오류 없음

lottoking 2020. 8. 13. 06:52
반응형

Visual Studio 2015 프로젝트 빌드가 실패했지만 오류 없음


내 프로젝트 빌드가 모두 실패하지만 오류가 표시되지 않습니다. 나는 청소와 재건을 시도했지만 작동하지 않았습니다.

문제를 해결하는 데 도움이되기를 바라며 MSBuild 출력 상세도를 '진단'변경했는데 이제 막혔습니다. 출력은 다음과 가변합니다.

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를 닫았다가 다시 열면 문제가 발생합니다.

나는 또한 솔루션 청소와 청소 실패도 시도했습니다.

이것이 트릭을 수행하지 않는 다른 시나리오가 다시 시작될 수 있습니다.


모든 빌드 오류가 표시되지 않습니다.

"아이콘 뒤의 드롭 다운"빌드 + Intellisense "에서"빌드 전용 "으로 변경하면 Intellisense에서 감지되지 않은 빌드 오류 목록을 볼 수 있습니다. 아래 스크린 샷을 참조하십시오.

짓다


"빌드 실패"를보고하지만 오류 창에 오류가 표시되지 않는 VS2015의 일반 인스턴스를 보았습니다. 오래된 명령 줄 배경에서 왔기 때문에 마침내 창을 보았습니다. 출력 창에 컴파일러보고 오류가 표시되지 않습니다. VS2013 에서이 문제를 본 적이 없습니다.

VS의 일반적인 폐쇄 및 재개는이 조건을 해결하지 않습니다. (VS2013에서 이것은 신사에서 XAML 인텔리 센스를 시작하고 수정 된 "오류"에 대한 수정을 중지하는 일반적인 방법입니다.)

지금은 항상 XAML 페이지 CS 파일의 수단 오류와 관련이 있습니다. 페이지가 아닌 CS 파일에서 본 것을 기억할 수 없습니다.

출력 창을 확인하기 오류는 오류 창에서 오류가 발생하는 오류 센스보고와 같은 XAML의 개체에 대한 오류 참조를보고하지만 오류 창에 표시되는 컴파일러 오류는 "나타나기 오류가 매우 혼란 스러울 수 있습니다." intellisense보고 XAML 오류. 실제로는 사실입니다. XAML 오류는 CS 파일이보고 실패했지만 오류 창에 오류가 없습니다.


숨겨진 .vs폴더를 삭제하면 VS2015에서 저에게 그렇습니다.

(현재 SUO 파일이있는 곳입니다.)


이는 다른 .net 프레임 워크 버전 프로젝트 (제 경우 v4.5.2 대 v4.5)를 참조 할 때 보관 수 있습니다. 이를 수정하면 문제가 해결됩니다.


VS2015 업데이트 3 RC 및 Xamarin (.Forms 공유 프로젝트) 에서이 문제가 발생했습니다.
컴파일러는 멈추지 않고 오류는 출력 창에만 표시되었습니다.
이 모두 Xamarin 프로젝트에 해당됩니다 (VB.NET 프로젝트가 예상대로 작동 함) ...
문제의 원인을 호출면 VS에서 빌드를 변경했습니다
.- 메뉴 "도구-옵션"
-왼쪽 패널에서 : "프로젝트 및 솔루션 : 빌드 및 실행 ":
-"MSBuild Output Verbosity "를"최소 "에서"진단 "으로 변경합니다.

그런 다음 중지되고 오류가 표시되었습니다.
그 후 옵션을 "진단"에서 "최소"(이전처럼)로 다시 설정하고 "최소"작동했습니다. (확실히 VS를 다시 시작했습니다) ...

그래서 .. (MSBuild Output Verbosity ")를 변경 (터치)하는 것만으로도 문제가 해결되고 VS 및 / 또는 Xamarin 통합 소프트웨어의 버그 인 것입니다 (적어도 제 경우에는).


나에게 일어난 일 컴퓨터의 존재를 +5 : 30으로 변경 한 다음 다시 -5 : 00로 변경하는 것이 VS를 혼란스럽게 만드는 것입니다. VS를 다시 시작했을 때 다시 작동했습니다.


모든 프로젝트 프레임 워크 버전을 확인하고 모두 동일한 지 또는 최소한 참조 프로젝트 B의 .NET Framework 버전이 더 높은 경우 프로젝트 A가 프로젝트 B를하지 않는지 확인합니다.


나는이 문제에 직면 한 유일한 사람인지 나는 모른다. 제 경우에는 Visual Studio를 열었을 때 발표가 GMT + 1:00이고 빌드가 성공한 다음을 GMT + 5:30으로 변경 한 다음 Visual Studio를 다시 시작하지 않고 응용 프로그램을 실행하려고 시도했지만 오류나 경고없이 실패한 다음을 GMT + 10:00으로 다시 변경하고 오류없이 빌드가 성공했습니다.


내가 한 일은 (위의 모든 작업에도 여전히 작동하지 않음) 모든 빈 폴더를 살펴보고 모두 지우는 것입니다 (즉, 참조 된 프로젝트도 마찬가지입니다).

이것은 나를 위해 일했습니다. 당신도 그렇게되기를 바랍니다.


문제가 있었고이 using빈 네임 스페이스를 가리키는 것으로 밝혀졌습니다 . 해당 using절을 제거 하면 문제가 해결됩니다.


경고를 확인하십시오 ..

참조 프로젝트가 참조 문제를 일으킨 4.0 인 동안 대상 .Net Framework 4.5가있는 새 클래스 라이브러리가 있습니다.

대상 .Net Framework 4.0으로 클래스 라이브러리를 수정 한 후 작동했습니다.


위의 답변 중 아무것도 도움이되지 않습니다. 많은 실험 끝에 마침내 문제가 프로젝트 중 하나에서 Microsoft.Net.Compilers v2.10.0에 대한 참조임을 발견했습니다. VS 2015는 해당 버전의 Microsoft.Net.Compilers를 지원하지 않는 MSBuild v14를 사용합니다.


저 에게이 문제는 사용자 정의 CodeAnalysis 규칙 설정 " IncludeAll " 과 관련이 있습니다.

컴파일러 가이 설정을 준수하는 소리.

  <IncludeAll Action="Error" />

그러나 IntelliSense는 "경고"인 규칙 ID에 대해 기본 조치를 취했습니다. 이것은 @RobertHarvey에서 보이는 동작을 설명합니다. 여기서 Build Only로 출력을 필터링하고 ERROR 로 표시하지만 Intellisene Only로 필터링하면 WARNING으로 표시됩니다 . 기본 Build + Intellisense에 의한 필터링 출력은 결정적이지 않은 것 같습니다!

내 수정 사항은 내가 경고가 되고자하는 규칙을 경고로 명시 적으로 호출하는 것이 었습니다.

  <Rules AnalyzerId="Microsoft.CodeAnalysis.CSharp" RuleNamespace="Microsoft.CodeAnalysis.CSharp">
    <Rule Id="CS0618" Action="Warning" />
  </Rules>

이는 IncludeAll 옵션을 관찰하지 않는 Intellisense의 잠재적 인 문제입니다 . 참조 https://github.com/dotnet/roslyn/issues/7400를


이는 이전 프레임 워크를 사용하여 프로젝트를 Visual Studio 2015로 마이그레이션 할 때도 발생할 수 있습니다. 오류 목록에서 경고를 확인하십시오. 프로젝트가 현재 .NET 버전 2.0이고 .NET 3.5 이상이 필요하다는 것을 알 수 있습니다. 유사한 경고가 발견되면 프로젝트의 속성으로 이동하여 필요한 .NET Framework를 대상으로 지정하십시오.


경고를 확인하십시오. 때때로 어떤 종류의 경고 때문에 빌드가 실패했습니다.


솔루션을 열고 생성하면 "출력 탭"에보고 된 일부 빌드 오류 또는 경고를 볼 수 있지만 "오류 탭"은 문제를보고하지 않습니다.

여기에 이미지 설명 입력

"오류 탭"구성이 정상임을 확인할 수 있습니다 ( "빌드 만 해당"및 "전체 솔루션"선택).

자세히 조사한 결과 빌드를 시작할 때 "오류 탭"이 아직 표시되지 않은 경우에만이 문제가 발생한다는 사실을 확인했습니다!

빌드를 수행하기 전에 "오류 탭"을 활성화 한 경우 (또는 Visual을 시작할 때 현재 탭인 경우) 새로 발견 된 오류 / 경고가 올바르게 표시됩니다.

여기에 이미지 설명 입력

"오류 탭"이 표시 될 때만 초기화되는 것과 같습니다 (처음 클릭 할 때 표시되는 데 시간이 더 걸리기 때문에 사실 일 수 있습니다 ...). 그렇지 않은 경우 빌드를 수집하지 않습니다. 결과 ...

지금까지 " 빌드하기 전에 오류 탭을 활성화 "하는 것 보다이 문제에 대한 더 나은 답은 없습니다 .

그래서 언젠가 "VS 다시 시작"이 작동하는 이유입니다. "오류 탭"이 비어있는 것을 확인하고 VS를 닫고 다시 만든 다음 VS가 이전 세션에서 현재 활성 탭을 복원 할 때 기본적으로 "오류 탭"이 표시됩니다. 빌드하고 이제 "오류 탭"이 채워집니다 ...! 당신은 운이 좋았습니다.

참고 : VS 버그보고 : https://connect.microsoft.com/VisualStudio/feedback/details/3132689


답변 에서 가져온

컴파일에 실패했습니다. 출력 창에 오류가 표시되지 않았습니다.

문제의 원인을 찾으려면 VS에서 빌드 출력을 변경했습니다.-메뉴 "도구-옵션"-왼쪽 패널에서 : "프로젝트 및 솔루션 : 빌드 및 실행":- "MSBuild 출력 상세도"를 "에서 변경합니다. 최소 "-"진단 "

그 후 실제로 의존성 프로젝트에서 실수 인 진짜 이유를 발견했습니다. 제가 의존했던 프로젝트는 저와 다른 프레임 워크 (최신) 용으로 구축되었습니다. 따라서 문제가 발생합니다. Output Verbosity를 Diagnostic에 넣었을 때만 오류가 출력되었습니다.


나에게 그것은 불량 자산이었다. 문제는 반드시 내가 오류를 볼 수 없다는 것이 아니 었습니다. 오류는 다음과 같습니다.

하위 노드 "2"가 너무 일찍 종료되었습니다. 종료합니다. 진단 정보는 MSBuild _ *. failure.txt라는 임시 파일 디렉터리의 파일에서 찾을 수 있습니다.

처음에는 빌드가 중단되고 Visual Studio를 닫으려고하지 않는 한 오류가 표시되지 않습니다. 다시 시작하면 빌드시 오랜 시간 동안 멈춘 다음 위의 메시지가 표시됩니다.

숨겨진 .vs폴더 삭제 , 솔루션 다시 작성 / 정리 및 Visual Studio 다시 시작이 작동하지 않았습니다. 연결된 속성을 제거하면 수행되었습니다. 어딘가에서 제대로 작동하지 않는 실제 코드 일 수 있습니다.

마지막 수단으로 문제가 해결 될 때까지 최근 변경 사항을 하나씩 제거하겠습니다.

최신 정보

기존 WPF 응용 프로그램을 개발하는 데 익숙했기 때문에 .UWP에서 s를 사용하여 "연결된"XAML 네임 스페이스를 가질 수 없다는 사실을 깨닫지 못했습니다 . 연결된 속성을 설정하려고했습니다.

My.Namespace:SomeClass.SomeProperty="SomeValue"

반면에, 그것은

MyNamespace:SomeClass.SomeProperty="SomeValue"

내가 좋아하는 것만 큼 예쁘지는 않지만, 분명히 갈 수있는 유일한 방법입니다.


나를 위해 일한 것 :

모든 문서를 닫으면 문제가 해결되었습니다. (intelliSense가 작동을 멈춘 경우에도 동일한 솔루션)

(오른쪽 클릭 탭-모든 문서 닫기)


이 시도

"mstscax.dll"종속성에서 제외 하는 것이 저에게 효과적이었습니다.


틈새 문제 : 방금 같은 문제가 발생했습니다. 위의 답변 중 어느 것도 도움이되지 않았습니다.

문제 는 콘솔 프로그램에 대한 것이었고 Main () 메서드를 내가하고 있던 async **로 표시 할 수 없습니다. 확실하지 않은 이유는 Visual Studio에서 프로젝트가 정확히 빌드되지 않은 이유를 지정할 수없는 이유입니다 (매번 오류 0 개와 경고 0 개가 표시됨). Visual Studio 2015 Enterprise를 사용하고 있습니다.

수정 : 해결 방법여기 입니다.


나를 위해 빌드는 오류없이 실패했지만 약간의 조사 끝에 VS에서 MSHTML에 대한 참조를 찾을 수 없다는 것을 알았습니다.

여기에 이미지 설명 입력

이 동작은 Windows 10으로 업데이트 한 후에 나타났습니다.이 문제를 해결하려면 GAC에서 어셈블리를 등록해야합니다. 이를 수행하는 방법 은 Windows 10 의이 답변 MSHTML DLL 로 이동하여 내 답변을 찾았습니다.


dll 파일을 업데이트 한 후 새 파일이 더 높은 버전의 .NET Framework를 대상으로한다는 것이 밝혀졌습니다. 해결책은 프로젝트 속성으로 이동하여 대상 프레임 워크를 적절한 버전으로 변경하는 것이 었습니다.


MSBuild.exe가 디렉터리 (C ​​: \ Program Files (x86) \ MSBuild \ 14.0 \ Bin)에서 변경되었습니다.

그래서 나는 vs2015가있는 다른 PC에서 MSBuild.exe를 대체합니다.

이제 잘 작동합니다.


모든 오류를 보려면 '전체 솔루션'의 오류 목록 아래 오른쪽에있는 콤보 상자를 설정해야합니다. 여기에 이미지 설명 입력

참고 URL : https://stackoverflow.com/questions/31911433/visual-studio-2015-project-builds-failed-but-no-errors

반응형