2011-04-13 5 views
1

win 2003 2003 32 비트 서버에 cc.net 빌드 서버가 있습니다. Targets="ResolveReferences;_WPPCopyWebApplication"으로 웹 프로젝트를 만들고 있습니다. 결과를 64 비트 웹 서버에 배포하고 있습니다. 문제는 _WPPCopyWebApplication이 dll이 32 비트이기 때문에 우리의 64 비트 서버에서 깨는/bin 출력 폴더에 시스템 dll (System.Data, PresentationCore, System.Web)을 추가하는 것 같습니다. 우리는 AnyCPU 옵션으로 구축하고 있습니다.32 비트 빌드 서버에서 64 비트 웹 응용 프로그램을 빌드

답변

3

64 비트 플랫폼에서 웹 서버를 실행하려고하면 .net은 x64 시스템 어셈블리에 최적화되어 사용됩니다. 따라서 웹 서버가 충돌합니다. 내가 detailes 있지만 잘못된 플랫폼 (x86/x64)에서 오류가있을 수 있습니다.

x86을 사용하는 32 비트 빌드 머신에서 컴파일 할 것을 제안 할 수 있습니다. x64 서버는 32 비트 dll 만 사용해야합니다. 빌드 머신을 x64로 마이그레이션 할 때 프로젝트를 AnyCPU로 다시 설정할 수 있습니다.

+0

그래, 그것도 하나의 해결책이지만 우리는 64 비트에서만 웹 서버를 가동하여 램을 완전히 사용할 수 있습니다. –

+0

32 비트 빌드 도구가 32 비트 DLL을 사용하는 몇 가지 경우를 알고 있습니다. 정확히 오류의 원인을 찾을 수 있지만 32 비트 빌드 서버에서 해결할 수는 없다고 생각합니다. 64 비트 빌드 서버로 이동할 때가 될지도 모릅니다. –

관련 문제