
Microsoft Build Tools 2015是款用任务、目的和工具的工具集与生成应用程序。西西记者带来的是Microsoft Build Tools 2015官方最新版,MSBuild 工具集包含 microsoft.common.tasks 文件、microsoft.common.targets 文件与编译器(如 csc.exe 和 vbc.exe)。 大部分工具集可用于将应用程序编译为多个版本的 .net framework与多个系统平台。
在项目文件中 Project 元素的 ToolsVersion 特质中指定工具集。 下面的示例指定应用 MSBuild 12.0 工具集来生成项目。
Project ToolsVersion=12.0 ... /Project
当你在visual studio中创建项目或更新现有项目时,名为 ToolsVersion 的特质将自动包含在项目文件中,并且其值对应于包含在 Visual Studio 版本中的 MSBuild 版本。 有关详细情况,请参阅面向特定的 .NET Framework版本或配置文件。
当 ToolsVersion 值在项目文件中概念时,MSBuild 将用该值来确定在该项目中可用的工具集属性的值。 其中一个工具集属性为 $,该属性指定 .NET Framework 工具的路径。 仅该工具集属性(或 $)是必需的。
从 Visual Studio 2013 开始,MSBuild 工具集版本号与 Visual Studio 版本号相同。 无论项目文件中指定什么工具集版本,MSBuild 都会在 Visual Studio 中和命令行上默认用该工具集。 用 /ToolsVersion 标志可重写此行为。 有关详细情况,请参阅重写 ToolsVersion 设置。
在下面的示例中,MSBuild 将用 MSBuildToolsPath 保留的属性查找 Microsoft.CSharp.targets 文件。
Import Project=$\Microsoft.CSharp.targets /
可通过概念自概念工具集来修改 MSBuildToolsPath 的值。 有关详细情况,请参阅标准和自概念工具集配置。
当在命令行上生成解决方法并为 msbuild.exe 指定 ToolsVersion 时,所有项目及其项目到项目的依靠项均基于该 ToolsVersion 生成,即使解决方法中的每一个项目都指定了我们的 ToolsVersion 也是这样。 若要针对每一个项目概念 ToolsVersion 值,请参阅重写 ToolsVersion 设置。
ToolsVersion特质也用于项目移植。 比如,假如你在 Visual Studio 2010 中打开 Visual Studio 2008 项目,则该项目文件将更新以包含 ToolsVersion=“4.0”。 假如你此时尝试在 Visual Studio 2008 中打开该项目,因为它不会辨别已升级的 ToolsVersion,因此它会根据该特质设置为 3.5 的状况生成该项目。
Visual Studio 2010 和 Visual Studio 2012 用的 ToolsVersion 为 4.0。 Visual Studio 2013 用的 ToolsVersion 为 12.0。 在很多状况下,不需要修改即可在 Visual Studio 的所有三个版本中打开该项目。 Visual Studio 一直会用正确的工具集,但会在用的版本与项目文件中的版本不匹配时公告你。 在几乎所有状况下,此警告是良性的,由于工具集在大部分状况下都兼容。
子工具集(将在本主题后面部分介绍)允许 MSBuild 依据运行生成所在的上下文自动切换要用的工具集。 比如,当 MSBuild 在 Visual Studio 2012 中运行时,它将用比在 Visual Studio 2010 中运行时更新的工具集,而且你不需要显式更改项目文件。 有关详细情况,请参阅怎么样:修改项目系统,以便项目在 Visual Studio 的多个版本加载。
通过选择组成某个工具集的各种工具、目的与任务的路径来达成该工具集。 MSBuild 概念的工具集中的工具来自以下源:
.NET Framework 文件夹。
其他推广托管工具。
这类推广托管工具包含 ResGen.exe 和 TlbImp.exe。
MSBuild 提供了两种方法来访问工具集:
工具集属性指定工具的路径。 MSBuild 用项目文件中的 ToolsVersion 属性的值以查找相应的注册表项,然后用该注册表项中的信息来设置工具集属性。 比如,假如 ToolsVersion 的值为 12.0,则 MSBuild 将依据以下注册表项设置工具集属性:HKLM\Software\Microsoft\MSBuild\ToolsVersions\12.0。
MSBuildToolsPath指定 MSBuild 二进制文件的路径。
SDK40ToolsPath为 MSBuild 4.x(可以是 4.0 或 4.5)指定其他推广托管工具的路径。
SDK35ToolsPath为 MSBuild 3.5 指定其他推广托管工具的路径。
或者,可以通过调用 ToolLocationHelper 类的办法以编程方法确定工具集。 此类包含以下办法:
GetPathToDotNetFramework 返回 .NET Framework 文件夹的路径。
GetPathToDotNetFrameworkFile 返回 .NET Framework 文件夹中文件的路径。
GetPathToDotNetFrameworkSdk 返回推广托管工具文件夹的路径。
GetPathToDotNetFrameworkSdkFile 返回某个文件的路径,该文件一般坐落于推广托管工具文件夹中。
GetPathToBuildTools 返回生成工具的路径。
TAG标签:Microsoft(6)BuildTools(1)
转载请说明来源于当下软件园(https://www.gpsdan.com)
本文地址:https://www.gpsdan.com/soft/6289.html
郑重声明:文章来源于网络作为参考,本站仅用于分享不存储任何下载资源,如果网站中图片和文字侵犯了您的版权,请联系我们处理!邮箱3450399331@qq.com