【问题标题】:ProjectReference assemblies not copied to startup project's output dir when using msbuild command line使用 msbuild 命令行时,ProjectReference 程序集未复制到启动项目的输出目录
【发布时间】:2014-04-24 18:08:13
【问题描述】:

在 Visual Studio 2012 中,我有一个包含多个项目的解决方案。

Solution S
  - Project A (startup project) (references project B)
  - Project B

我的主项目(项目 A)有一个对我的另一个项目(项目 B)的项目引用。

我的主项目编译为 C:\MAIN_BIN,而我的其他项目编译为 HisProjectFolder/Bin。

Project A builds to: C:\MAIN_BIN
Project B builds to: C:\SolutionS\ProjectB\Bin

项目 A 上对项目 B 的引用设置为 Copy Local = True。在 csproj 文件中,属性 <Private>True</Private> 设置为项目对项目 B 的引用。

当我使用 Visual Studio 2012 构建解决方案时,ProjectB.dll 被编译到他的 bin 文件夹,然后复制到 C:\MAIN_BIN。

当我从命令行使用 msbuild 构建时,ProjectB.dll 被编译到他的 bin 文件夹中,并且从不复制到 C:\MAIN_BIN。

如何使 msbuild 的行为方式与 Visual Studio 2012 相同?

【问题讨论】:

    标签: visual-studio visual-studio-2012 build msbuild build-process


    【解决方案1】:

    明确设置OutDir 属性:

    msbuild s.sln /p:OutDir=C:\MAIN_BIN\ /t:Rebuild
    

    【讨论】:

    • 这并没有解决问题。
    猜你喜欢
    • 2018-05-26
    • 1970-01-01
    • 2018-10-28
    • 2011-08-20
    • 2014-10-10
    • 1970-01-01
    • 2011-04-26
    • 2014-10-06
    • 2010-09-20
    相关资源
    最近更新 更多