【问题标题】:Building 64 bit web application on 32 bit build server在 32 位构建服务器上构建 64 位 Web 应用程序
【发布时间】:2011-04-13 22:47:15
【问题描述】:

我们在 win 2003 32 位服务器上有一个 cc.net 构建服务器。我们正在使用Targets="ResolveReferences;_WPPCopyWebApplication" 构建我们的网络项目。我们将结果部署到 64 位 Web 服务器。问题是_WPPCopyWebApplication 似乎将一些系统 dll(System.Data、PresentationCore、System.Web)添加到 /bin-output 文件夹中,这在我们的 64 位服务器上会中断,因为这些 dll 是 32 位的。我们正在使用 AnyCPU 选项进行构建。

【问题讨论】:

    标签: msbuild 32bit-64bit


    【解决方案1】:

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

    我可以建议在配置 x86 的 32 位构建机器上编译。那么 x64 服务器将只需要使用 32 位 dll。当您的构建机器将迁移到 x64 时,您可以将项目设置回 AnyCPU。

    【讨论】:

    • 是的,这是一种解决方案,但我们希望仅在 64 位上运行我们的网络服务器,以便我们可以充分利用它们的内存。
    • 我知道 32 位构建工具依赖于 32 位 dll 的几种情况。您可以找到导致错误的确切原因,但我认为您无法在 32 位构建服务器上解决它。可能是时候迁移到 64 位构建服务器了。
    猜你喜欢
    • 1970-01-01
    • 2012-01-15
    • 2018-04-06
    • 1970-01-01
    • 2014-11-27
    • 2016-12-02
    • 2013-11-07
    • 2015-04-19
    • 1970-01-01
    相关资源
    最近更新 更多