问题标签 [msbuild-target]

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 回答
456 浏览

msbuild - 在 MSBuild 任务中,如何访问构建生成的所有警告?

我的总体目标是在解决方案构建结束时阅读所有警告,然后将它们记录为错误。这与 TreatWarningsAsErrors 设置不同,因为这也应该为有这些警告的项目创建二进制文件。

我希望通过自定义 MSBuild 任务来解决这个问题,但我不知道我需要从 .targets 文件中传递什么。

编辑:我不认为这是这个问题的重复,因为它解决了为某个字符串解析日志,并为该特定代码发出错误。我想获取构建中所有警告的列表,无论它们的内容如何。

0 投票
1 回答
359 浏览

msbuild - 在外部的目标中声明的 MSBuild 访问属性组

我在访问在目标内声明的 PropertyGroup 时遇到问题。

Target 内的消息正在正确发布版本号。当我尝试发布 VersionNumber 和 VersionInfo 时,我只能看到 VersionInfo 的正确值为 true,但 VersionNumber 显示为空字符串。我希望 VersionNumber 值也在这里发布

请帮忙 !

下面是我的代码文件:

0 投票
1 回答
15925 浏览

c# - MSBuild 还原目标 - MSB4057:项目中不存在目标“还原”

我们的主要产品组合中有 20 多个解决方案(超过 880 个项目),并且我们有一组运行良好的复杂构建脚本,但我们正在尝试从 msbuild 管道中自动恢复 nuget 包。目前,这是通过手动调用 nuget 来恢复包来完成的。

根据https://docs.microsoft.com/en-us/nuget/schema/msbuild-targets我应该能够运行此命令并运行恢复:

但是,当我将其添加restore,到上面时,它会引发错误

我从哪里开始研究以了解为什么找不到这个目标?我们主要在 VS 2015 和 .NET 4.6.2 上,所以目前我不适合 VS2017 的任何特定内容。


如果我省略/v:qand/clp:ErrorsOnly标志,我会得到这个(稍微清理过的解决方案/项目名称和路径)

我意识到其中一些是我们的内部工具,我只是觉得没有必要掩盖那部分。

根据“互联网”,这应该只是作为构建过程的一部分“免费”,我不确定我们在此处的 csproj 文件中缺少什么。

0 投票
0 回答
98 浏览

msbuild - MSBuild 任务 CreateItem 与存在的文件

在一个msbuild目标中,我正在尝试创建一个项目,它应该包含一个文件列表,只有当它们存在时。

显示的所有变量均已定义。有谁知道如何为文件存在添加条件?

我尝试了上面的那个,它对我不起作用。还是有其他方法可以做到这一点?

0 投票
1 回答
509 浏览

msbuild - 基于 Microsoft.Common.CurrentVersion.targets 的新语言目标

我正在编写一个简单的扩展来允许 MSBuild 编译可靠源文件。

我的目标是当我solidproj被编译时,它运行特定的可执行文件,该可执行文件会生成多个文件bin,这些abi文件应该被复制到目标目录。这听起来很容易,但实际上并非如此。

我目前有以下目标:

它几乎可以工作,只是它期望单个exe文件被编译

错误 MSB3030 无法复制文件“obj\Debug\Solidity9.exe”,因为找不到它。Solidity9 C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets 4118

我如何要求它将此特定扩展的所有内容复制到输出中?

整个项目在 github

0 投票
2 回答
668 浏览

msbuild - Unexpected AfterTargets="Build" 依赖项目的执行顺序

我在 Visual Studio 2017 中有两个多目标项目。

项目依赖

项目主体

项目主要取决于依赖项。我希望构建输出是

当我使用 Visual Studio 2017 构建解决方案时,我得到了该输出

但是当我从 cmd 运行 msbuild 时,我得到下一个输出

而且这个顺序有点出乎意料(并打破了我在实际项目中的自定义逻辑)。

为什么“DependencyAfterBuild IsCrossTargetingBuild=true”比“MainAfterBuild IsCrossTargetingBuild=true”运行得晚?

我需要如何修改我的项目以使 msbuild 在“MainAfterBuild IsCrossTargetingBuild=true”之前运行“DependencyAfterBuild IsCrossTargetingBuild=true”。

0 投票
1 回答
179 浏览

visual-studio-2015 - 将构建脚本从 VS2008 转换为 VS2015

我正在努力从 VS2008 升级到 VS2015。一切都在 VS2015 中构建得很好,现在是时候让用于发布代码的构建脚本工作了。运行“msbuild BuildReleaseVS2015.proj /target:CoreApplicatrion”时出现此错误:

这是项目文件的一部分:

我已经浏览了 MSDN,但无法弄清楚我错过了什么,有什么想法吗?

0 投票
1 回答
1238 浏览

msbuild - 具有多个输出的 MsBuild 目标

当您有多个输出时,有没有办法克服目标一对一的映射?似乎这应该是可能的,但我不知道怎么做,因为我对 MsBuild 还很陌生,我可能会遗漏一些东西。

下面的 msbuild 脚本来自微软的文档。当我有多个备份文件夹时,我应该更改什么?所以一个列表@(BackupFolders) 我想保持构建的增量行为?

0 投票
1 回答
1074 浏览

c# - Cake MSBuild 目标

我正在尝试使用Cake' 的内置MSBuild功能来仅构建特定的目标(即Compile)。使用以下示例:https ://cakebuild.net/api/Cake.Common.Tools.MSBuild/MSBuildAliases/C240F0FB

但它似乎构建了所有目标,而我只想构建一个特定的目标,详见:https ://msdn.microsoft.com/en-us/library/ms171486.aspx

0 投票
1 回答
4285 浏览

c# - MsBuild PostBuild 目标

我已向 Visual Studio 项目添加了一个AfterBuild目标,该项目是包含多个 Visual Studio 项目的解决方案的一部分。

示例解决方案设置

例子.sln

  • ExampleProj.csproj

  • ExampleProj.Test.csproj

目标示例:

我希望这个目标在解决方案中的所有 Visual Studio 项目都已构建后执行。

有没有办法做到这一点。

dotnet build注意:我需要在 Visual Studio 中使用以及 build 命令时的行为相同。