问题标签 [msbuild]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
msbuild - MSBuild:如何获取引发的警告数量?
有一个 MSBuild 脚本,其中包括 Delphi 和 C# 项目、单元测试等的编号。
问题是:如果出现警告,如何标记构建失败(出于测试目的,而不是发布构建)?在自定义任务中使用 LogError 而不是 LogWarning 似乎不是一个好的选择,因为构建应该尽可能多地测试(直到真正的错误)一次报告尽可能多的警告(构建项目在 CruiseControl.NET 中使用)。
可能是,解决方案是创建我自己的记录器,在里面存储警告标志,但我找不到在构建结束时是否有办法读取这个标志?
PS 收到警告后立即构建失败没有问题(Delphi 编译器输出由自定义任务处理,/warnaserror 可用于 C#),但期望的行为是“构建所有内容;收集所有警告;构建失败" 报告所有警告,而不仅仅是第一个警告。
PPS 至于我真的不需要警告的数量,而只是他们存在的标志,我决定简化信号机制,并使用微不足道的互斥体而不是共享内存。代码如下:
c# - 创建 MSBuild 自定义任务以修改 C# 代码 *before* 编译
我想创建一个自定义 MSBuild 任务,在 csc.exe 编译它们之前更改我的 .cs 文件(但是,当然,这并没有就地修改它们 - 我不希望触及实际的源文件)。我知道 PostSharp 和其他用于 .NET 的 AOP 框架,它们不是这个特定项目的选项,而且我想学习如何做到这一点。
我必须做些什么才能让它发挥作用?
谢谢理查德
tfs - 如何让 Team Build 运行 MbUnit 测试?
我无法让 Team Build 执行我的 MbUnit 单元测试。我尝试编辑 TFSBuild.proj 并添加了以下部分:
但我还没有让测试运行。
vb6 - VB6 与 MSBuild 的集成
因此,对于必须在 Team Build/MSBuild 环境(特别是 Visual Basic 6 应用程序/项目)中集成遗留项目/代码的构建/编译的任何人来说,这是一个问题。
除了编写自定义构建任务(我不反对)之外,是否有人对如何最好地将遗留 VB6 项目的编译和版本控制集成到 MSBuild 构建中有任何建议?
我知道CodePlex的 FreeToDev msbuild 任务,但它们目前已被撤回。
理想情况下,我正在寻找版本和编译代码以及捕获 msbuild 日志的编译输出(尤其是错误)。
我已经看到有关将此功能封装在自定义任务中的建议,但真的想知道是否有人尝试过另一种解决方案(除了执行 shell 命令)-本质上,是否有人有“更清洁”的解决方案?
理想情况下,使用执行命令将是最后的手段。
.net - 如何从自定义 MSBuild 任务将输出写入控制台?
我正在尝试调试 MSBuild 任务,并且我知道有一些方法可以从自定义任务中写入 MSBuild 日志,但我忘记了如何。
c++ - msbuild:在命令行中设置特定的预处理器#define
在 C++ 文件中,我有这样的代码:
我想使用 msbuild 命令行将此 ACTIVE 定义设置为 1。
它尝试了这个,但它不起作用:
任何的想法?
msbuild - 从 MSBuild 查看项目依赖项
是否有一种模式、某种开关或编程方式可以让 MSBuild 显示或输出给定构建文件的计算依赖项?
一些背景- 我有一个大型项目需要拆分以加快构建时间,并希望将缓慢变化的基础架构代码删除到它自己的发布区域。并非所有信息都包含在构建文件本身中,因为某些子项目由它们的 vcproj 或 csproj 文件引用。
我真的很想看看 MSBuild 认为需要做什么(或者更坏的情况 [rebuild all] 并且可能是一个 make),而无需实际进行重建。
.net - 在 Microsoft.Sdc.Tasks 中使用 Service Exists MSBuild 任务的示例?
我正在尝试使用Microsoft.Sdc.Tasks.ServiceProcess.Exists
来检查服务是否存在。但是文档中没有使用它的示例。有人有吗?
.net - 使用 Microsoft.Sdc.Tasks.ServiceProcess.ControlService 如何检查远程计算机上是否存在服务?
Microsoft.Sdc.Tasks.ServiceProcess.ControlService
我正在尝试使用该任务检查远程计算机上是否存在服务。
当我使用上述任务声明时,我会从 MSBUILD 获得此输出。
(42,54): error MSB4065: The "ServiceExists" parameter is not marked for output by the "ControlService" task.
有没有办法使用 ControlService 类来获取远程机器上是否存在服务?
tfs - AssemblyInfo.cs 文件的自动更新和签入偶尔会导致部分失败
我们将 TFS 2008 构建设置为签出项目中的所有 AssemblyInfo.cs 文件,使用 AssemblyInfoTask 更新它们,然后根据构建是否通过来撤消签出或签入。不幸的是,当两个构建紧密排列在一起时,这会导致构建部分完成,因为 AssemblyInfo.cs 文件似乎是在先前签入的早期版本中签出的。
为了解决这个问题,我认为我可以使用“获取”任务将 AssemblyInfo.cs 文件强制为最新版本,然后再更新它们,但这似乎没有效果。有任何想法吗?