1

我有一个带有插件模型的项目。它还附带了几个默认插件。我想告诉 Visual Studio(以及 Team Build 服务器上的 MSBuild),在构建主应用程序时,它需要将“DefaultPlugin.dll”从“DefaultPluginProject”复制$(OutDir)到它自己的$(OutDir)Plugins.

我明确不想将主项目中的项目引用添加到插件项目中;如果主项目依赖于插件,这将使编译成为可能,这是不可取的。项目依赖系统的“CopyLocal”$(OutDir)在任何情况下都只能直接复制到,而不是$(OutDir)Plugins.

有没有办法$(OutDir)从 MSBuild 中的 ProjectReference 项中检索?

作为参考,我尝试了以下两种解决方案:

  • 运行复制文件的 Post-Build-Step。这在构建服务器上失败了,因为 的值$(OutDir)在那里完全不同。
  • 将插件项目的输出目录设置为“..\MainProject\x86\Debug\Plugins”。这是不可取的,因为它使找出哪个项目导致哪些文件被复制变得困难。
4

0 回答 0