Msbuild 在32位构建服务器上构建64位web应用程序

Msbuild 在32位构建服务器上构建64位web应用程序,msbuild,32bit-64bit,Msbuild,32bit 64bit,我们在win 2003 32位服务器上有一个cc.net构建服务器。我们正在使用Targets=“ResolveReferences;”WPPCopyWebApplication“构建我们的web项目。我们正在将结果部署到64位web服务器。问题是,\u WPPCopyWebApplication似乎将一些系统DLL(system.Data、PresentationCore、system.Web)添加到/bin输出文件夹,该文件夹在64位服务器上中断,因为DLL是32位的。我们正在使用任意CPU

我们在win 2003 32位服务器上有一个cc.net构建服务器。我们正在使用
Targets=“ResolveReferences;”WPPCopyWebApplication“
构建我们的web项目。我们正在将结果部署到64位web服务器。问题是,
\u WPPCopyWebApplication
似乎将一些系统DLL(system.Data、PresentationCore、system.Web)添加到/bin输出文件夹,该文件夹在64位服务器上中断,因为DLL是32位的。我们正在使用任意CPU选项进行构建

尝试在64位平台上运行web服务器时。net使用针对x64系统程序集优化的。因此,您的web服务器崩溃。我可能在细节上是错的,但是混合平台(x86/x64)中的错误


我可以建议在配置为x86的32位编译机器上编译。然后,x64服务器将只能使用32位DLL。当您的构建机器将迁移到x64时,您可以将项目设置回任何CPU。

是的,这是一种解决方案,但我们希望仅在64位上运行web服务器,以便充分利用它们的ram。我知道有几种情况下32位构建工具依赖32位DLL。您可以找到错误的确切原因,但我认为您无法在32位构建服务器上解决它。可能是时候使用64位构建服务器了。