MSBuild 内置变量列表
Posted
技术标签:
【中文标题】MSBuild 内置变量列表【英文标题】:List of MSBuild built-in variables 【发布时间】:2010-11-29 23:48:34 【问题描述】:如何获取内置 MSBuild 变量的列表?
我需要知道如何确定当前项目的 csproj 名称,并认为了解在 MSBuild 中还能找到什么可能会很有用。
【问题讨论】:
【参考方案1】:来自 Microsoft Docs(新文档)的综合列表:
Common macros for MSBuild commands and properties来自 MSDN(旧版文档)的综合列表:
MSBuild reserved properties Common MSBuild properties Macros for Build Commands and Properties其他有用的列表:
Well-known item metadata MSBuild special characters第一个链接显示项目名称的 MSBuild 属性:
MSBuildProjectName 不带文件的项目文件的文件名 扩展名
【讨论】:
我还会包括docs.microsoft.com/en-us/dotnet/core/tools/…。这些属性在迁移到新的 csproj 格式时非常有用。【参考方案2】:http://msdn.microsoft.com/en-us/library/c02as0cs(loband).aspx
【讨论】:
这是后面问题中提到的宏列表的链接。我相信这些是 VS 设置的属性,所以请注意,如果从命令行构建 - 这些值将不会被设置。【参考方案3】:这些属性也可以由 3rd-party 工具定义,以便获得我刚刚使用的完整列表(例如在 C++ 项目中):属性 -> 配置属性 -> 常规 -> 然后在输出或中间目录下拉向下选择 Edit...,您应该会看到所有已定义属性的列表。
【讨论】:
【参考方案4】:这似乎是一个非常详尽的列表:Common macros for MSBuild commands and properties
【讨论】:
【参考方案5】:还有用于管道的 Agent 和 Build 预定义变量:https://docs.microsoft.com/en-us/azure/devops/pipelines/build/variables?view=azure-devops&tabs=yaml。这些是我在看到这篇文章时一直在寻找的变量,所以当我最终找到它们时,我想我会传递链接。
【讨论】:
【参考方案6】:我还将为 MSBuild 包括一个 Common Properties and Parameters 列表。
此外,这些属性取决于您使用的 MSBuild 版本。有3个版本。
【讨论】:
以上是关于MSBuild 内置变量列表的主要内容,如果未能解决你的问题,请参考以下文章
msbuild、dotnet sdks、azure、kudu等使用的环境变量列表