【问题标题】:MSBuild pre-build event that is a dependency at compile time but not at runtimeMSBuild 预构建事件,它是编译时的依赖项,但不是运行时的依赖项
【发布时间】:2013-01-21 20:10:06
【问题描述】:

我在 SLN 解决方案中有两个项目:

  • 项目 X:可执行文件。
  • 项目 Y:图书馆。

项目 Y 并不真正依赖于 X(我不应该将 X 添加到 Y 的引用列表中),发生的情况是项目 X 是一个可执行文件,它会在构建后对 Y.dll 进行一些操作。

那么如何在他们的 MSBuild .csproj 文件中编写代码呢?我想我需要:

  • 项目 Y 中用于构建项目 X 的​​预构建任务。
  • 项目 Y 中用于执行项目 X 的​​构建后任务。

如何在 MSBuild 中执行此操作? 谢谢!

【问题讨论】:

    标签: .net build msbuild


    【解决方案1】:

    实际上,如果您向构建 x 的解决方案添加对 y 的引用并右键单击 y 的属性并将默认操作从不复制更改为始终复制,则在构建解决方案时您只需要构建后运行 x, y 的事件将在同一个 bin 目录中。

    【讨论】:

    • 构建 X 的解决方案?我猜你的意思是构建 X 的“项目”?
    • 唯一的事情是我希望Y.dll留在应该在的地方,即src/Y/bin/Debug/Y.dll,然后再调用X.exe .. /../../Y/bin/Debug/Y.dll
    • 不,我的意思是 Visual Studio 解决方案(它可以包含多个项目。如果 x 和 y 都在相对于彼此的已知位置 x 可以使用相对路径来获取 y.dll
    猜你喜欢
    • 1970-01-01
    • 2015-05-07
    • 2011-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-28
    • 1970-01-01
    相关资源
    最近更新 更多