.NET 4.0在CI服务器上构建问题

DMc*_*nna 98 .net msbuild continuous-integration build .net-4.0

任何人都设法在CI服务器上编译.NET 4.0应用程序,而无需在CI服务器上安装Visual Studio 2010?

.NET 4.0不存在SDK.在CI服务器上安装了.NET 4.0.Msbuild.exe适用于简单项目并发出以下警告:

(GetReferenceAssemblyPaths目标) - > C:\ Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(847,9):警告MSB3644:框架".NETFramework,Version = v4.0"的引用程序集没找到.要解决此问题,请为此框架版本安装SDK或Targeting Pack,或者将应用程序重新定位到已安装SDK或Targeting Pack的框架版本.请注意,程序集将从全局程序集缓存(GAC)中解析,并将用于代替引用程序集.因此,您的程序集可能无法正确定位到您想要的框架.

Jer*_*eir 128

您不再需要安装VS,现在可以安装"Microsoft Windows SDK for Windows 7和.NET Framework 4".

http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=6b6c21d2-2006-4afa-9702-529fa782d63b

  • 默认安装是1.7 GB,但大多数这些文件是不必要的.如果您取消检查除.NET Development> Intellisense和Reference Assemblies之外的所有内容,它们仍然会为您提供所需的.NET 4定位包(大约450 MB). (44认同)
  • 还有一个Web安装程序,因此您只需下载所需的部件.可以在这里下载:http://www.microsoft.com/download/en/confirmation.aspx?id = 8279 (8认同)
  • 虽然这被命名为"for Windows 7",但值得注意的是支持的操作系统:Windows 7,Windows Server 2003 R2标准版(32位x86),Windows Server 2003 R2标准x64版,Windows Server 2008,Windows Server 2008 R2 ,Windows Vista,Windows XP Service Pack 3 (2认同)
  • 那个答案对我有帮助.我有一个不同的问题安装sdk 7.1解决了这里显示http://www.mathworks.com/matlabcentral/answers/95039 (2认同)

res*_*kiy 23

这里提供 SDK for .NET 4.5 .安装程序与具有基本授权的代理一起使用.支持的操作系统:Windows 8,Windows Server 2012,Windows 7,Windows Server 2008 R2

PS我的回答更像是对Jeremy回答的评论,但我没有足够的声誉对答案发表评论.


kit*_*ite 10

其他选择:无需安装Net 4.0 SDK或vs 2010

将引用程序集文件夹从开发计算机复制到构建服务器(190MB).

使用msbuild -p:FrameworkPathOverride选项指向引用程序集文件夹

参考装配位置:

C:\ Program Files(x86)\ Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0或C:\ Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0

从以下发现:

.NET 4.0生成服务器引用程序集警告MSB3644

如果您收到此错误:"找不到Microsoft.WebApplication.targets" - 只需从开发机器复制目标/sf/answers/374097251/

如果构建服务器中未安装mvc3; "将可部署的程序集"添加到mvc项目 http://haacked.com/archive/2011/05/25/bin-deploying-asp-net-mvc-3.aspx

如果在没有安装sdk或visual studio的情况下构建MSTest项目时出错; 有几篇关于此的博客帖子,对我来说这个解决方案太复杂了.我使用NUnit代替MSTest