2017-04-07 54 views
1

在我的構建中,我想將源文件列表以clang格式提供。我正在MsBuild中這樣做。我發現ItemGroup中的文件列表可能很大。我可以像這樣格式化命令行:如何在使用MsBuild中的Exec時切斷命令行

$(MSBuildThisFileDirectory)clang-format.exe -style=file -output-replacements-xml %(ClangFilesToFormat.Identity) 

但是,我認爲我超過了最大命令行長度並且命令失敗。所以,我想在批量的X文件中調用clang格式。我不想爲每個單獨的文件調用它,因爲如果我這樣做,它太慢了。

如何將一個ItemGroup拆分爲X個項目的批次或以其他方式解決此問題?

感謝

回答

0

沒有它,是很難說的背景,但我希望的語法%(ClangFilesToFormat.Identity)導致配料(因此,呼籲每一個人文件的命令)。假設clang-format.exe預計這些文件是空格分隔的,我想你會想用@(ClangFilesToFormat, ' ')來代替。首先考慮使用如下所示的診斷線來驗證您是否獲得了所需的字符串。

<Error Text="ClangFilesToFormat: @(ClangFilesToFormat, ' ')" />