요구사항: 프로젝트는 여러 서드파티 SDK를 참조해야 하며, 그중 일부는 :Newtonsoft.Json.dll와 같은 일반적으로 사용되는 DLL을 참조할 수 있습니다. 이로 인해 프로젝트 전체가 동일한 DLL의 서로 다른 버전을 참조하게 되고, 프로젝트는 동일한 DLL로 컴파일된 결과로 한 개의 파일만 출력됩니다.
간단한 DLL 버전 의존성 문제는 아래에서 참고할 수 있습니다:
참조:하이퍼링크 로그인이 보입니다.
참조된 DLL이 다른 버전일 뿐만 아니라 publicKeyToken의 버전이라면, 어떻게 해결해야 할까요? Newtonsoft.Json.dll의 경우, 프로젝트는 다른 버전과 publicKeyToken을 가진 파일을 참조합니다.
- Newtonsoft.Json.dll, version:12.0.0.0,publicKeyToken:30ad4fe6b2a6aeed - Newtonsoft.Json.dll,version:4.0.0.0,publicKeyToken:null
간단한 참조 리다이렉트 설정만으로는 문제를 해결하지 못하며, 구성은 다음과 같습니다:
Newtonsoft.Json 버전 4.0.0.0에 의존하는 서드파티 SDK 메서드를 호출하면 다음과 같은 오류가 발생합니다:
파일 또는 어셈블리 "Newtonsoft.Json, Version=4.0.0.0, Culture=neutral, PublicKeyToken=null" 또는 그 의존성 중 하나를 불러오지 못했습니다. 발견된 어셈블리 매니페스트 정의가 어셈블리 참조와 일치하지 않습니다. (HRESULT의 예외:0x80131040) 해결책: bin 디렉터리 아래에 새 JSON4 폴더를 만들고, Newtonsoft.Json.dll 4.0.0.0 버전을 이 폴더에 넣은 뒤 다음과 같이 구성을 수정하세요:
(끝)
|