【问题标题】:build dependencies from Visual Studio从 Visual Studio 构建依赖项
【发布时间】:2011-09-16 14:44:13
【问题描述】:

将新项目添加到大型解决方案后,我收到错误,表明构建不正确。我一直依靠 Visual Studio 来实现它,我将不胜感激。

下面是来自配置管理器的图片。最后的项目(Parties.Presentation.Wpf)依赖于名为“Core.Presentation.Wpf”的程序集,如下代码所示:

using Smack.Core.Presentation.Wpf.Services;
using Smack.Parties.Presentation.ViewModels.PimVms;

namespace Smack.Parties.Presentation.Wpf.ApplicationControl
{
    public class PimVisualizerService : WpfUiVisualizerService
    {

        public PimVisualizerService(WpfTypeRegistrationService registrationServiceService)
            : base(registrationServiceService) { _registrationService.Register<PimShellVm>("blah"); }

    }
}

不确定是否全部为 R#,但在我尝试构建之前,没有显示错误,我可以导航到 Core 程序集中的基类。

但我无法构建它,并且出现此错误:

Error   1   The type or namespace name 'Core' does not exist in the namespace 'Smack' (are you missing an assembly reference?)  
C:\Users\L&M\Documents\Projects\Smack\trunk\src\Parties.Presentation.Wpf\ApplicationControl\PimVisualizerService.cs 1   13  
Parties.Presentation.Wpf

这是一个构建依赖问题吗?我该如何解决?

干杯,
浆果

更新

好的,根据 the last answer to this question,从“MixedPlatforms”更改为“AnyCPU”让我可以再次构建。

我会暂时搁置一下,看看有没有比我有更多构建经验的人说这是一个 hack 或正确的做法。我很好奇为什么 WPF 项目一开始就默认使用 x86。

【问题讨论】:

  • 您可能知道您可以控制解决方案中项目的构建顺序?您可以尝试强制在“Parties.Presentation.Wpf”之前构建“Core.Presentation.Wpf”
  • 如果我混入了 F# 项目,有时我会遇到可怕的问题。但首先构建这些,然后构建完整的解决方案,甚至多次构建解决方案,到目前为止都为我解决了这个问题。
  • @Berryl - 如果您有实际(非偶然)x86 依赖项并尝试在 x64 上运行它,则构建“任何 CPU”会中断。它可能默认为“x86”,因为那是/是最常见的平台目标。
  • @Ritch Melton。同意 AnyCPU 是一个脆弱的解决方案 - 假设 x86 是一个真正的依赖项,对于如何更可靠地解决这个问题,是否有一个简单的答案?为什么不把它作为一个答案,这样我就可以关闭它并同时学习一些东西!干杯

标签: visual-studio-2010 msbuild build


【解决方案1】:

如果您有实际(非偶然)x86 依赖项并尝试在 x64 上运行它,则构建“任何 CPU”会中断。它可能默认为“x86”,因为那是/现在是最常见的平台目标。

不幸的是,没有解决此问题的零维护方法。因为出于依赖性原因,我要运送给企业客户的工作被强制为“x86”,所以我将从 .csproj 文件中删除“任何 CPU”配置,并确保默认设置为“x86” ',但添加一个新项目将具有“任何 CPU”配置,并且解决方案将转向“混合平台”,并在解决方案中设置了“任何 CPU”和“x86”。

【讨论】:

    猜你喜欢
    • 2012-06-19
    • 2010-10-09
    • 2021-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-21
    • 2011-03-16
    • 1970-01-01
    相关资源
    最近更新 更多