Visual Studio 2008을 시작할 때마다 프로젝트를 처음 실행하려고하면 오류 CS0006 The metadata file … could not found. 전체 솔루션을 다시 빌드하면 작동합니다.
솔루션에 대한 몇 가지 정보 :
-
디버그 모드에서 빌드 중이며 Visual Studio가 릴리스 폴더에서 dll : s를 찾지 못한다고 불평합니다.
-
Visual Studio가 불평하는 프로젝트는 솔루션의 다른 많은 프로젝트에서 사용됩니다.
-
모든 프로젝트의 기본 출력 경로를 각각 …… \ build \ debug \ ProjectName 및 …… \ build \ release \ ProjectName으로 변경했습니다. (단지 하나의 디렉토리에 모든 빌드 파일을 가져 오기 위해)
-
다른 솔루션과 동일한 문제가 있습니다.
-
솔루션은 처음부터 만들어졌습니다.
-
솔루션에는 9 개의 프로젝트가 있습니다. dotnet 3.5를 사용하는 1 개의 WPF 및 8 개의 클래스 라이브러리.
이 문제의 원인에 대한 아이디어가 있습니까?
답변
“메타 데이터를 찾을 수 없습니다”라는 비슷한 문제가 발생했습니다. 솔루션 속성에서 각 프로젝트의 빌드 / 구성 관리자 에 “빌드”확인란이 표시되어 있는지 확인 합니다.
답변
이는 일반적으로 오류를 발생시키는 솔루션과 다른 솔루션에서 참조되는 프로젝트로 인해 발생합니다. 다른 솔루션을 정리하거나 코드를 분기하면이 오류가 나타날 가능성이 큽니다. 해결책은 “메타 데이터를 찾을 수 없음”오류 목록을 아래로 스크롤하고 프로젝트에 대한 참조를 보는 것입니다. 9/10 번,이 솔루션에없는 프로젝트에 대한 끊어진 참조가 표시됩니다. 프로젝트를 추가하여 참조 오류를 수정하고 다시 빌드하십시오. 그것은 그것을 고쳐야합니다.
(나는 오늘 이것을 만났고 과거에 있었고 이것은 항상 작동했습니다)
답변
나는이 문제가 있었지만 도움이되는지 확실하지 않지만 두 가지 다른 솔루션에서 참조하는 동일한 프로젝트의 두 가지 버전이 있기 때문에 발생했습니다. 올바른 프로젝트에 대한 참조를 사용하여 솔루션을 빌드 할 때 두 번째 솔루션이 잘 빌드되지만 첫 번째 솔루션을 정리하고 두 번째 솔루션을 빌드하려고하면 이러한 dll 참조 오류 메시지와 함께 실패합니다.
나를위한 해결책은 실수로 중복 된 동일한 이름을 가진 두 개의 프로젝트가 있다는 것을 알아 내고 이전 잘못된 프로젝트에 대한 참조를 제거하고 새 프로젝트에 대한 참조를 추가하는 것입니다.
어쨌든 이러한 메시지는 약간의 붉은 청어처럼 보입니다. 빌드 출력을 확인하고 빌드에 실패한 첫 번째 프로젝트를 찾고 해당 프로젝트에 대한 참조를 매우 신중하게 확인합니다.
답변
확인해야 할 또 다른 사항은 경로 길이입니다. 이로 인해 메타 데이터 파일을 찾을 수없고 컴파일 오류가 발생합니다. 방금 폴더 이름을 더 짧은 경로와 voilá, 인식되지 않고 검은 색으로 유지되는 클래스로 변경하고 이름 만 변경하면 파란색으로 바뀝니다. 폴더.
답변
저에게는 다른 프로젝트에서 참조 된 프로젝트가있었습니다. 솔루션 탐색기 창의 참조 목록에서 깨진 것으로 표시되지 않았지만 어쨌든 제거하고 읽었습니다. 이제 잘 빌드됩니다!
답변
VS2012에서이 모든 단계를 거쳤지만 솔루션 전체를 빌드 할 때이 문제가 계속 발생했습니다 (개별 프로젝트는 오류없이 잘 빌드되었습니다).
Solution Explorer에서 솔루션을 마우스 오른쪽 버튼으로 클릭하고 “Build Order”를 선택하면 VS가 솔루션을 다시 빌드하는 데 사용하는 순서를 볼 수 있습니다. 엉망진창 일 가능성이 높습니다.
종속성 탭을 클릭하고 솔루션의 다른 프로젝트에 종속 된 프로젝트를 선택하고 종속 된 프로젝트를 확인하여 빌드 순서를 수정할 수 있습니다. 일단 괜찮아지고 솔루션을 다시 빌드하면 시작해야합니다.
답변
내가 과거에 VS2005와 VS2008에서이 문제를 해결 한 방법은 모든 종속성이 정확하고 참조가 dll이 아닌 프로젝트를 가리키는 지 확인하는 것입니다. 그런 다음 각 프로젝트를 진행하여 종속성 순서대로 수동으로 빌드하십시오. 마지막 빌드가 빌드되면 전체 솔루션 빌드를 실행할 수 있습니다.
이 답변은 질문이 15 개월 이상 지난 것을 알고 있으므로 다른 사람들이 나중에 참조 할 수 있도록하기위한 것입니다.
건배
