我正在構建屬性表的層次結構(許多根據平臺和配置有條件地包含),並且我正在嘗試編寫一組目標來幫助診斷任何可能會潛入的錯誤。如何從MSBuild轉儲導入屬性表的列表
我想要的是已包含的屬性表列表。
例子:
<ImportGroup Condition="$(Configuration.Contains('Debug'))">
<Import Project="ps.cpp.config.debug.props"/>
</ImportGroup>
<ImportGroup Condition="$(Configuration.Contains('Release'))">
<Import Project="ps.cpp.config.release.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Platform)' == 'x64'">
<Import Project="ps.cpp.plat.x64.props"/>
</ImportGroup>
<ImportGroup Condition="'$(Platform)' == 'Win32'">
<Import Project="ps.cpp.plat.win32.props"/>
</ImportGroup>
和目標是這樣的:
<Target Name="DumpPropertySheets">
<!-- This doesn't work! -->
<!-- <Message Text="%(Import.Project)"/> -->
</Target>
應該導致這樣的控制檯輸出,當內置msbuild test.vcxproj /t:DumpPropertySheets /p:Platform=x64 /p:Configuration:Debug
DumpPropertySheets:
ps.cpp.config.debug.props
ps.cpp.plat.x64.props
另外,我d喜歡它,如果有人可以創建一個msbuild-batching標籤,因爲顯然我嘗試批量處理ItemGroup以外的東西顯然失敗了。我仍然認爲這是一個有用的標籤。 –