programing

빌드 실패의 원인을 오류 또는 경고 없이 찾는 방법

muds 2023. 4. 21. 21:33
반응형

빌드 실패의 원인을 오류 또는 경고 없이 찾는 방법

WCF 서비스에 대한 참조가 포함된 Web Application이 있습니다.

Visual Studio 2010을 사용하여 빌드하는 동안 오류나 경고 없이 빌드가 실패합니다., 「」, 「」의 .csproj를 사용합니다.MsBuild공했습습니니다

문제를 해결/진단하기 위해 Visual Studio에서 무엇을 시도해야 하는지 알 수 없습니다.도와주실 수 있나요?

조립에 실패했다는 걸 알게 됐지만

  1. 상태 표시줄에 표시된 텍스트에서.
    여기에 이미지 설명 입력

  2. 출력창에서:

     ========== Build: 0 succeeded or up-to-date, 1 failed, 0 skipped ==========
    

    출력 탭에는 구성 세부 정보가 포함되어 있습니다.

    ------ Build started: Project: <projectName here> Configuration: Debug Any CPU
    

에러 리스트에서 「빌드+인텔리센스」를 선택하면, 에러 메세지가 삼켜지는 것을 알 수 있었습니다.

이 옵션을 "빌드 전용"으로 변경하면 모든 오류 메시지가 표시됩니다.

스크린샷

이것이 Visual Studio의 버그인지 뭔지는 모르겠지만, 이 에러 메세지가 숨겨져 있는 것을 밝혀냈습니다.이 에러 메세지는, 제 에러를 특정하기 위한 열쇠였습니다.

Richard J Foster와 같은 일부에서는 "MSBuild project build output verbority" 설정을 "Diagnostic"(가능한 가장 높은 옵션)으로 늘릴 것을 제안했지만, Visual Studio가 오류 메시지를 자체적으로 억제하는 것처럼 보였기 때문에 문제가 해결되지 않았습니다.

또는 Visual Studio에서 필터링하지 않은 "출력" 탭의 원시 출력 메시지를 사용할 수도 있습니다.문자열 "error" 및/또는 "failed"를 인플레이스 검색하거나 모든 출력을 즐겨찾기 텍스트 편집기에 복사하여 검색합니다.

빌드할 때마다 Output 창이 나타나도록 하려면 Tools(도구) → Options(옵션) → Projects and Solutions(프로젝트 및 솔루션) → General(일반)으로 이동하여 "Show Output Window when build starts(빌드 시작 시 출력 창 표시)" 옵션이 선택되어 있는지 확인합니다.

슈팅에서 PowerShell을 실행하여 를 구축할 .dotnet build그러면 Visual Studio에서 숨길 수 있는 오류를 포함하여 전체 빌드 출력이 표시됩니다.

나도 비슷한 상황에 처했을 뿐이야.이 경우 csproj 파일의 BeforeBuild 타겟에 표시된 MSBuildVersioning 패키지(Nuget.org - http://www.nuget.org/packages/MSBuildVersioning/)에서 사용 가능한 MSBuildVersioning 패키지)에서 정상적인 위치에서 오류 메시지가 트리거되지 않고 작업이 실패했습니다.

이것을 판별하려면 , 다음과 같이 「MSBuild 프로젝트 빌드 출력의 상세」(최신 Visual Studio의 「툴」탭[패스]>옵션」>빌드 앤 실행」)을 진단」으로 설정합니다.다음으로 커스텀액션(여기서는 HgVersion File)이 실패한 것을 알 수 있습니다.

수정된 설정을 보여주는 Visual Studio의 화면 캡처.

다음은 시도해 볼 수 있는 몇 가지 사항입니다.

  • 솔루션에 여러 프로젝트가 포함되어 있는 경우 각 프로젝트를 한 번에 하나씩 구축해 보십시오.(솔루션과는 별도로 각 프로젝트를 열어보는 것도 좋습니다.)
  • 해당하는 경우 모든 프로젝트(의존관계 및 테스트 포함)가 동일한 버전의 를 대상으로 하고 있는지 확인합니다.NET Framework. (이 제안에 대해 사용자 764754님 감사합니다!)
    툴( )→ Extension and Updates(확장 및 업데이트)입니다.
  • 모든 의존관계 프로젝트는 메인 프로젝트와 동일한 플랫폼을 대상으로 구축되어야 합니다.
  • Visual Studio를 다시 시작해 보십시오.
  • Bill Yang이 제안한 대로 Visual Studio를 Administrator로 실행해 보십시오(이미 Administrator로 실행 중인 경우 그 반대도 시도해 보십시오).
  • 컴퓨터를 재기동해 주세요.
  • "모두 재구축"을 시도합니다.
  • "Clean Solution"을 실행하고 나서*vspscc* ★★★★★★★★★★★★★★★★★」*vssscc*파일을 다시 시작하고 Visual Studio를 재시작한 다음 "모두 재구성"을 클릭합니다.
  • Andy가 제안한 대로 Visual Studio를 닫고.suo비주얼 스튜디오
  • Arun Prasad E S의 제안에 따라 Visual Studio를 닫고.vs폴더를 선택한 다음 Visual Studio를 다시 엽니다.이 폴더는 Visual Studio에서 자동으로 생성되며 캐시, 구성 설정 등을 포함합니다.자세한 내용은 다음 질문을 참조하십시오.Visual Studio - .vs 폴더 및 https://stackoverflow.com/q/48897191.) 삭제 중
  • Malith씨의 제안에 따라 Visual Studio를 닫고objVisual Studio를 소개합니다.

숨겨진 .vs 폴더를 삭제하고 Visual Studio를 재시작합니다.나한테는 효과가 있었어.

나는 Sasse의 대답을 더 자세히 말하고 싶다.올바른 버전의 를 대상으로 해야 했습니다.NET을 사용하여 문제를 해결합니다.

한 프로젝트에서 오류가 발생했습니다.

형식 또는 네임스페이스 이름 'SomeNamespace'가 네임스페이스 'BeforeSomeNamespace'에 없습니다(어셈블리 참조가 누락되었습니까?').

[ Error List ](오류 목록) 창에는 오류가 없었지만 어셈블리의 [References](참조) 아래에 노란색 경고 표시가 있습니다.

그 후 레퍼런스 프로젝트는 4.5.1을 대상으로 하고 레퍼런스 프로젝트는 4.6.1을 대상으로 하고 있는 것을 알았습니다.4.6.1을 4.5.1로 변경하면 전체 빌드가 성공할 수 있었습니다.

아무것도 동작하지 않기 때문에 .suo 파일을 삭제하고 VS를 재시작하여 프로젝트를 정리하면 빌드가 동작합니다.

Visual Studio 재부팅, 솔루션 클리닝 및 재구축, PC 재부팅 등 여러 가지 시도를 해봤지만 모두 잘 되지 않았습니다.저는 다음과 같은 방법으로 문제를 해결할 수 있었습니다.

우선, 솔루션의 모든 프로젝트(테스트 포함)가 같은 것을 대상으로 하고 있는 것을 확인합니다.NET 버전그 후, 다음과 같이 입력합니다.

  1. 프로젝트의 보류 중인 변경 사항을 저장하고 Visual Studio 닫기

  2. 파일 탐색기에서 정확한 위치를 찾아 "obj" 파일을 찾아 엽니다.

    여기에 이미지 설명 입력

  3. 그런 다음 포함된 파일을 모두 삭제합니다(일부 파일은 삭제되지 않습니다.상관없습니다.그냥 건너뜁니다.

  4. (Windows 키 + R을 눌러) 실행 명령을 사용하고 %temp%를 입력한 후 Enter 키를 눌러 임시 파일을 찾습니다.

  5. 마지막으로 모두 삭제합니다.

또한 Visual Studio를 관리자로 실행해야 할 수도 있습니다. 이는 로컬 IIS 서버에 배포하거나 다른 배포 요구와 관련이 있을 수 있습니다.

단지 완성이나 장래에 같은 에러가 발생하는 것을 막기 위해서, Mahaps 메트로 인터페이스를 사용하고, 1개의 창의 XAML을 변경했습니다만, 코드 배후에 있는 부분 클래스를 변경하는 것을 잊었습니다.이 경우 오류나 경고 없이 빌드에 실패하여 출력의 상세도를 높임으로써 확인할 수 있었습니다.

[ Error ]페인

출력 페인

내 경우(VS 2019 v16.11.20), 디세이블화Text Editor->C#->Advanced->Enable 'pull' diagnostics옵션을 사용하여 문제를 해결했습니다.

프로젝트의 _underscore.aspx 페이지를 더블 체크합니다.

페이지와 코드가 뒤에 있었어요

`myPage.aspx` and `myPage.aspx.vb`

프로젝트 작성 시 오류가 발생합니다..aspx.vb페이지에 정의되어 있는 속성을 나타냅니다..aspx페이지 자체는 정상적으로 빌드되고 출력에 다른 에러는 표시되지 않지만(진단 레벨의 빌드 출력에서도) 페이지는 존재하지 않습니다.

친 에 띄었다: 그 、 은 、 은 、 core 、 core 、 core 、 core : core 。_myPage.aspx 잘 이 잘 -알겠습니다

언급URL : https://stackoverflow.com/questions/13239325/how-to-find-the-reason-for-a-failed-build-without-any-error-or-warning

반응형