首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MSBuild ItemGroup可以分块吗?

MSBuild ItemGroup可以分块吗?
EN

Stack Overflow用户
提问于 2014-10-30 08:55:34
回答 1查看 28关注 0票数 1

我有一个ItemGroup,它包含来自我的项目的源文件:

代码语言:javascript
复制
  <ItemGroup>
    <SourceFiles Include=".\**\*.h;.\**\*.cpp"/>
  </ItemGroup>

有几百个源文件。我想将它们传递给Exec任务中的命令行工具。

如果我为每个文件单独调用命令行工具:

代码语言:javascript
复制
  <Exec Command="tool.exe %(SourceFiles.FullPath)" WorkingDirectory="."/>

然后,它运行得非常慢。

如果我调用命令行工具并一次性传递所有文件:

代码语言:javascript
复制
  <Exec Command="tool.exe @(SourceFiles -> '&quot;%(FullPath)&quot;', ' ')" WorkingDirectory="."/>

然后,如果有太多的文件(我猜命令行长度超过了某个最大值),就会出现一个错误。

是否有一种方法可以对项目进行分块,以便可以多次调用该工具,每次将源文件名的最大数量传递给该工具?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-30 09:02:23

我不知道有什么机制可以用众所周知的项目元数据来实现这一点。您可以做的是将所有这些路径加载到它们自己的项组中,并编写一个调用exec任务的自定义任务。编写自定义任务非常简单,可以内联完成:

http://msdn.microsoft.com/en-us/library/vstudio/dd722601(v=vs.100).aspx

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26648659

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档