[英]How to compile another project before compiling main project?
我有一個包含兩個執行項目的解決方案。 用戶可以通過按一個按鈕從項目 A 執行項目 B。 項目 A Debug 文件夾包含項目 B Debug 文件夾,因此它通過該文件夾的硬編碼路徑執行項目 B。 如果我想在項目 B 中進行一些更改 - 我需要重新編譯項目 B 並在項目 A 的 Debug 文件夾中替換它的 Debug 文件夾。 我認為從架構的角度來看,這不是一種聰明而舒適的方式。 所以我想在項目 A 構建事件中包含這樣的操作,但我以前從未這樣做過,所以我很高興聽到你的建議。
最簡單的實現方式是創建一個從A到B的引用,這樣你就可以從項目A訪問B的(公共)成員。這樣,你也可以在A的過程中運行B的代碼,消除了需要啟動一個單獨的進程。
如果您確實需要為在單獨進程中運行的 B 提供單獨的 exe,則還有另一種方法需要更多努力:
<Target Name="AfterBuild">
<ItemGroup>
<AdditionalFiles Include="$(MSBuildProjectDirectory)\..\ProjectB\bin\$(Configuration)\ProjectB.*" />
</ItemGroup>
<Copy SourceFiles="@(AdditionalFiles)" DestinationFolder="$(OutputPath)" />
</Target>
<Target Name="AfterClean">
<ItemGroup>
<AdditionalFilesToDelete Include="$(OutputPath)\ProjectB.*" />
</ItemGroup>
<Delete Files="@(AdditionalFilesToDelete)" />
</Target>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.