Articles of msbuild

如何在OS X和Linux上安装MSBuild?

我期待在我的Linux笔记本电脑上安装MSBuild,这样我就可以构build一个我的C#OSS项目。 我怎么会这样做呢? 我遇到了一些指导,例如这个build议安装MSBuild NuGet包的指南,但似乎没有正式的或积极的维护。 有一个官方的软件包源,我可以安装MSBuild?

Windows上的Hadoop构build/安装错误

我正在尝试在Windows x64(8.1和Server 2012 R2)上安装Apache Hadoop 2.7.1 ,但是目标失败: [INFO] Apache Hadoop Common …………………………. FAILURE [ 37.925 s] 在过去的日子里,我想我遵循所有的教程,如HadoopOnWindows ,或这一个的步骤 。 我做了所有的先决条件,但是当我Google时,我的问题的相关问题如下: 设置MSBuild.exe的path,如: C:\ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319; 在path 设置pathCMake 安装Microsoft SDK 7.1并使用其Microsoft SDK 7.1 CMD运行 试图用Visual Studio 2013构build: hadoop-common \ src \ main \ winutils \ libwinutils.sln和hadoop-common \ src \ main \ winutils […]

如何查找Windows SDK的SetEnv.cmd / SetEnv.cmd无法正常工作

我们有一个Team City Build Server正在运行,并且想要编译一个Visual C ++项目。 到目前为止,这很容易,因为我已经使用Windows SDK安装了Windows Build Agent,但是我们没有解决scheme/项目文件。 项目文件是用CMake创build的。 CMake似乎有点愚蠢(当Visual Studio没有安装时,不能生成解决scheme),但有一些技巧,我可以做到这一点。 该解决scheme可以使用MSBuild构build。 问题来了。 为了自动工作,我需要调用Windows SDK的SetEnv.cmd。 而我似乎无法自动find它。 它位于Windows SDK的bin子目录中,但bin和root都不在path中,并且%mssdk%环境variables由SetEnv.cmd设置,并且不可用! 将Windows SDK \ bin目录添加到PATH会导致SetEnv.cmd不再有效(退出时会显示如下消息The x86 compilers are not currently installed并且Jump target Set_x86 not found 。 开始菜单链接调用SetEnv.cmd与Windows SDK dir作为工作目录。 但是,如果我将根目录添加到PATH,Bin \ SetEnv.cmd不可用。 我怎样才能自动findSetEnv.cmd? 即使将环境variables设置为setenv.cmd的完整path也不起作用,而当我将%mssdk%定义为sdk dir时,则调用%mssdk%\ bin \ SetEnv也不起作用。 我也尝试定义%mssdk%,然后cd%mssdk%,然后调用bin \ SetEnv。 在所有这些情况下也找不到编译器。 它也不起作用,如果我手动cd命令行上的根目录或目录,然后调用SetEnv.cmd … 开始菜单链接工作正常。 为了logging,我现在的解决scheme,就像这样奇怪,是以下几点: […]

在Windows命令行(最终在MsBuild中)自动执行cygwin命令

我有一个情况,我有几个cygwin命令,我希望在Windows命令行运行eg chmod 777 /home/administrator/* 目前我必须手动inputcygwin.bat,然后在cygwin中input上面的命令。 我想知道是否有可能(如果是这样,如何)在Windows命令行中自动执行这些步骤? 最终,我希望所有上述命令都可以在MsBuild中实现全自动化。 谢谢。

错误MSB3147:找不到所需的文件“setup.bin”发布到本地失败

在网上冲浪和讨论这个问题之后 ,我终于问了一个关于旧错误的新问题。 我在Windows 10上使用Visual Studio Enterprise 2015。 这个问题和答案是从2011年MSBuild:错误MSB3147:无法find所需的文件“setup.bin” 。 这个问题和接受的答案是在2012年写的,其他答案是从2015年,有一个从2016年,这是没有帮助无法find所需的文件“setup.bin” 。 该项目的目标版本是4.0。 我正在运行一个只能从另一台本地机器运行的psl脚本。 我不断收到这个错误: C:\ Program Files \(x86)\ MSBuild \ 12.0 \ bin \ Microsoft.Common.CurrentVersion.targets(4769,5):错误MSB3147:找不到需要的文件'setup.bin' SRC \ XXX \引擎”。 [C:\ dev \ xxx \ src \ xxx \ xxx.csproj]发布到本地失败 我已经尝试了每个答案的每个解决scheme。 唯一的作品是从这个答案 <BootstrapperEnabled>false</BootstrapperEnabled> 如果需要设置为true,那么这是一个问题。 我也在MSDN上跟着这个答案 。 这个博客 。 我添加了registry项: 我也注意到Windows 10内置了.NET框架,而且它错过了4.0。 我已经卸载了dotNetFx40_Full_setup.exe,并在Visual Studio上运行了修复程序,以便根据需要安装sdks。 这没有帮助。 我有一个MSBuild的exe文件应该是这样的 : […]

我需要build立一个Jenkins构build服务器,可以在没有Visual Studio的情况下构buildASP.NET项目?

我试图使用Jenkins(在Windows Server 2012上)来build立一个构build服务器,它将负责构build(使用config变换)和打包(zip文件)ASP.NET MVC / Web API项目,然后将它们移动到指定的位置C:/出版)。 基本上,我需要通过命令行Visual Studio Web Publish for File System,而无需安装Visual Studio。 压缩过程可以通过Jenkins推迟到命令行。 从search中,以下步骤是我迄今为止所做的: 安装了Jenkins 安装了Jenkins MSBuild插件 复制'C:\ Program Files文件(x86)\ MSBuild \ Microsoft \ VisualStudio \ v11.0 \ WebApplications \ Microsoft.WebApplication.targets'到我的生成服务器 安装了Windows 8 SDK 创buildJenkins的工作,从回购拉动源代码 将命令行参数添加到MSBuild任务…. 第6步是什么绊我。 我已经在网上尝试了很多build议,但不知道如何获得Visual Studio的发布命令的全部效果。 一个build议是使用发布configuration文件属性作为参数: /p:WebPublishMethod=FileSystem /p:LastUsedBuildConfiguration=Release /p:LastUsedPlatform=AnyCPU /p:ExcludeApp_Data=False /p:publishUrl=C:\Published\ /p:DeleteExistingFiles=True 但是这不会将任何文件移动到c:\Published\ 。

参见.exe的std :: cout

我有一个.exe文件,我在Windows上编译。 但是当我从命令行运行它,我没有看到我的程序输出到std :: cout或std :: cerr的任何东西。 即使在命令行返回提示(这是一个GUI程序,直到按下退出button后才退出),程序仍然运行并继续运行。 我怎样才能看到我的程序的输出? 我使用cmake来制作一个visual studio项目,然后用msbuild编译。

Visual Studio 2017构build工具不安装在Windows Server 2012上

我正在尽我所能设置一个构build服务器。 我去安装 并下载最新的构build工具,但只要我尝试安装它显示我这一点 所以我虽然好,也许它不支持它,所以我去了这里的要求 如果你向下滚动构build工具,它说它支持Windows 2012,我错过了一些东西。 谢谢

unit testingWindows商店应用程序 – MSBuild,MSTest和TeamCity

我正在尝试安装CI服务器(TeamCity 7),并对Windows商店应用程序运行日常构build和冒烟testing。 烟雾testing应该启动应用程序,等待5秒钟,然后退出。 我创build了编译代码的MSBuild脚本(在观看关于持续集成的Pluralsight课程之后)。 在我的解决scheme中,第一个项目是空白Windows商店应用程序,第二个是testing(unit testing库(Windowsapp store应用程序) – 如http://msdn.microsoft.com/en-us/library/vstudio/hh440545.aspx所述 ) 。 但我找不到:A)如何从testing方法启动空白的应用程序? B)如何从msbuild脚本和TeamCity服务器本地运行testing。 在Windows 8桌面上使用VS 2012 Premium。 这里是当前脚本: <?xml version="1.0" encoding="utf-8"?> <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0" DefaultTargets="Compile" > <UsingTask TaskName="MSBuild.ExtensionPack.Framework.AsyncExec" AssemblyFile=".\Thirdparty\Tools\MSBuildAsyncExec\MSBuild.ExtensionPack.dll"/> <UsingTask TaskName="RunAllTestsInSolution" AssemblyFile=".\Thirdparty\Tools\MSBuildCustomTasks\RunAllTestsInSolution.dll"/> <PropertyGroup> <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> </PropertyGroup> <ItemGroup> <BuildArtifacts Include=".\buildartifacts\"/> <SolutionFile Include=".\Decide Now.sln"/> </ItemGroup> <ItemGroup> <!– <MSTest Include=".\Thirdparty\Tools\MSTestFramework\Microsoft.VisualStudio.TestPlatform.UnitTestFramework.dll"/>–> <TestAssembly Include=".\buildartifacts\Tests\Tests.dll"/> <TestResults Include=".\buildartifacts\TestResults.trx"/> […]

2003和当前MSBuild模式之间的区别?

我们的项目文件已经有一段时间了,它们包括xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 。 我想弄清楚如何在CONDITION执行子string匹配,所以我想我会看看架构,看看是否有东西跳出来对我。 试图获取架构结果在404: $ wget http://schemas.microsoft.com/developer/msbuild/2003 –2016-10-04 22:44:43– http://schemas.microsoft.com/developer/msbuild/2003 Resolving schemas.microsoft.com (schemas.microsoft.com)… 65.54.226.187 Connecting to schemas.microsoft.com (schemas.microsoft.com)|65.54.226.187|:80… connected. HTTP request sent, awaiting response… 404 Not Found 当我在Web浏览器中访问时,Microsoft向我返回了以下消息,表明该架构曾经可用,但不再可用: 您正在查找的资源已被删除,名称已更改,或暂时不可用。 Microsoft在MSBuild项目文件架构参考中有文档,但是它没有列出可用的架构,架构的URL或它们之间的差异。 我猜测我们不应该使用2003架构,因为它似乎已经被弃用或撤销了,但是除此之外我不太了解。 我的问题是: 我们应该使用什么模式? 模式的URL是什么? 2003架构和我应该使用的架构之间有什么区别? 现在我们试图与AppVeyor进行整合,版本似乎更加相关。 我们在自动化testing方面遇到问题( 无法在AppVeyor下执行64位testing , 为什么AppVeyor使用vs2010工具来处理VS2015图像? ),AppVeyor支持build议更改XML标头中的版本号。 下面是一个典型的VCXPROJ文件的头。 <?xml version="1.0" encoding="utf-8"?> <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">