问题标签 [msbuild-task]

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.

0 投票
1 回答
17040 浏览

msbuild - 从 MsBuild 任务返回输出?

我想计算 MsBuild 任务中的路径,以供另一个 MsBuild 任务使用。实现这一目标的最佳方法是什么?

设置环境变量,打印到控制台,...?

0 投票
1 回答
1732 浏览

windows-installer - 如何在不使用 psexec 的情况下在 msbuild 中的远程计算机上安装 msi?

我在 Extension Pack 和 Community Tasks 中搜索了所有自定义任务,最后在 SDC 中找到了一个名为 Msi.Istall 的任务

任务。但是文档很糟糕并且会导致问题。我收到有关传递给安装程序的属性的错误。

下面是我的安装目标:

似乎它看着我自己的本地电脑来安装它,并说该产品已经安装并且需要删除。如何

否则我要指定远程机器吗?有什么想法我哪里出错了吗?我还被要求不要使用 psexec 工具或中间脚本。希望直接从 msbuild 任务安装。

0 投票
1 回答
435 浏览

tfs - 使用属性设置项目元数据

我一直在尝试使我的 TFS 构建中的任务更通用,我想做的一件事是根据使用该任务的构建将一些文件复制到不同的目录。我玩弄了使用属性的想法,但我想不出一种干净的方法,所以我尝试使用项目元数据,因为我已经能够在同一个目标文件的另一个地方这样做我正在努力,只是这一次,我想使用属性。

这是我想要做的:

后来在构建中,我尝试通过引用项目元数据将一些文件复制到目标文件夹:

不幸的是,构建运行后,我的 BuildLog 显示以下内容:

%(DestinationParentPath) 已扩展为空字符串,无论出于何种原因。使用 %(DestinationParent.DestinationParentPath) 会产生错误,告诉我我应该简单地使用 %(DestinationParentPath)。$(DeploymentPath) 在构建中的其他几个地方按预期扩展为正确的字符串。

另一个混淆的来源是使用 %(ConfigurationToBuild.FlavorToBuild) 产生了正确的值,即 Test,如下所示:

编辑:这是在根节点 Project 下定义的,而具有 DestinationParentPath 的 ItemGroup 是在 Target 节点下定义的。这也有影响吗?

当您只对项目元数据中的字符串感兴趣时,似乎 Include 属性并不相关,因为我很确定“Test|Any CPU”没有引用任何实际文件。

那么再一次,为什么 %(DestinationParentPath) 扩展为一个空字符串?

编辑:我忘了提到我也尝试硬编码 DestinationParentPath 的实际路径,但这仍然导致 %(DestinationParentPath) 扩展为空字符串。

0 投票
2 回答
1716 浏览

tfs - 在 TFS 构建中首次运行后跳过自定义目标

我的构建中有一个自定义目标(一组复制任务等),我需要调用几次才能在不同位置进行更改。但是,这只在第一次调用时运行,之后 TFS 构建会跳过所述目标。

过程如下:

在构建日志中,可以看到目标“CopyFiles”在第二次调用时被跳过:

为什么会这样?有没有办法强制目标(或我编写的任何自定义目标)运行多次?

0 投票
8 回答
58037 浏览

msbuild - 用于删除文件的 MSBuild 任务语法

我正在尝试编写一个 MSBuild 任务,该任务从我的生产构建脚本的 bin 文件夹中删除 Obj 目录和 PDB,并且似乎无法使其正常工作。

有没有人有一个他们这样做或类似的例子,或者一个使用 MSBuild 删除文件和目录的简单例子的链接?

0 投票
3 回答
1278 浏览

msbuild - Svcutil.exe MSBuild 任务

MSBuild 中是否有执行 svcutil.exe 的任务?还是某处有明确的包装任务?

0 投票
1 回答
17067 浏览

tfs - MSBuild TFS 内部版本号

我已经使用 SVN 一段时间了。最近在我使用 TFS 的一个项目中。对于构建,我喜欢在项目输出上附加/更新构建版本号。我在母版页上执行此操作,以便它在应用程序上清晰可见。由于应用程序可以在多台机器上运行,因此它是有关正在运行的版本的方便信息。

我在 SVN 世界中实现了这一点:

正如您在上面看到的,“BeforeBuild”任务使用 YYYY.MM.DD.SVNVERSION 标记更新 masterPage.master 文件。

如何使用 TFS 作为源代码控制来实现这一点。如何获取 TFS 内部版本号?

0 投票
1 回答
1475 浏览

asp.net - ASP.NET:发布后执行 MSBuild 任务

我有一个 ASP.NET 项目。项目的上下文菜单中有一个“发布...”选项(Visual Studio 2008)。

我可以添加一些将在发布后每次执行的自定义 MSBuild 任务吗?

如果没有,编写将发布项目的 MSBuild 脚本(与“发布...”选项相同)然后执行我的自定义任务的最佳方法是什么?

0 投票
1 回答
25501 浏览

.net - MSBuild 构建默认调试配置

我正在尝试使用 MSBuild 发布模式,但它始终默认为调试。知道为什么吗?

我检查了以下帖子;

MSBuild 任务 - 构建失败,因为在发布而不是调试中构建了一个解决方案

MSBuild 任务配置属性

0 投票
1 回答
782 浏览

msbuild - 从 MSBuild 获取最后一次构建的 Build URI 或 Build 号

我正在尝试为 MSBuild 创建一个自定义任务,以便它会向用户发送一封电子邮件,告知测试服务器上有一个新版本。

我完成了电子邮件部分,我想做的是添加此构建中包含的工作项。我尝试了 MSBuild 扩展(用于发送电子邮件),但获取该信息的功能不支持我正在使用的 TFS 2005,无法升级。

我试图使用 BuildStore.GetWorkItemsForBuild 但我需要一个我找不到方法的 builduri。

设置是这样的,从批处理文件中调用编译、构建和部署的步骤作为不同的选项。在部署选项结束时,将发送电子邮件。

任何人都可以帮助我吗?