2010-04-28 7 views
95

Bất kỳ ai quản lý để nhận các ứng dụng .NET 4.0 biên dịch trên máy chủ CI mà không cài đặt Visual Studio 2010 trên máy chủ CI?.NET 4.0 xây dựng các sự cố trên máy chủ CI

Không có SDK nào tồn tại cho .NET 4.0. Đã cài đặt .NET 4.0 trên máy chủ CI. Msbuild.exe hoạt động cho các dự án đơn giản và đưa ra cảnh báo sau:

(GetReferenceAssemblyPaths target) -> C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(847,9): warning MSB3644: The reference assemblies for framework ".NETFramework,Version=v4.0" were not found. To resolve this, install the SDK or Targeting Pack for this framework version or retarget your application to a version of the framework for which you have the SDK or Targeting Pack installed. Note that assemblies will be resolved from the Global Assembly Cache (GAC) and will be used in place of reference assemblies. Therefore your assembly may not be correctly targeted for the framework you intend.

+1

Làm cách nào để tạo lỗi này thay vì cảnh báo? Nó ẩn trong nhật ký xây dựng của chúng tôi và thay vào đó nó thất bại hơn nữa với một số thông điệp khó hiểu về mscorlib.dll –

Trả lời

125

Bạn không cần phải cài đặt VS nữa, bạn có thể cài đặt "Microsoft Windows SDK cho Windows 7 và .NET Framework 4" ngay bây giờ.

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

+43

Cài đặt mặc định là 1,7 GB, nhưng hầu hết các tệp này là không cần thiết. Nếu bạn bỏ chọn tất cả mọi thứ ngoại trừ .NET Development> Intellisense và Assemblies tham chiếu vẫn sẽ cung cấp cho bạn gói nhắm mục tiêu .NET 4 mà bạn cần (khoảng 450 MB). –

+1

Bạn cũng có thể kiểm tra .NET Development> Tools vì nó sẽ mang lại một số tiện ích như sn.exe có ích để xử lý các hội đồng đã ký. – Mykro

+0

Tôi đã tải về trình cài đặt, và khi tôi chạy nó, nó nói rằng tôi đã có .net 4 đã được cài đặt rồi, nhưng Intellisense và Reference Assemblies đã được bỏ chọn. Kiểm tra nó, và cài đặt những tập tin đó dường như để khắc phục vấn đề cho tôi. Điều kỳ lạ là, tôi đã có CI xây dựng này làm việc trong nhiều tháng nay, và nó chỉ bắt đầu ném lỗi này ngày hôm nay. – Carl

10

thay thế khác: không có cài đặt Net 4.0 SDK hoặc vs 2010

Sao chép thư mục lắp ráp tham khảo từ máy dev của bạn để xây dựng máy chủ (190MB).

sử dụng msbuild -p: FrameworkPathOverride tùy chọn để trỏ đến thư mục tham khảo lắp ráp

các hội đồng tham khảo vị trí:

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

thấy điều này từ:

.NET 4.0 build server reference assemblies warnings MSB3644

Nếu bạn nhận được lỗi này: "Microsoft.WebApplication.targets không tìm thấy" - chỉ cần sao chép các mục tiêu từ máy dev https://stackoverflow.com/a/5344246/423356

nếu MVC3 không được cài đặt trong xây dựng máy chủ; "thêm các assembly có thể triển khai" vào dự án mvc http://haacked.com/archive/2011/05/25/bin-deploying-asp-net-mvc-3.aspx

Nếu bạn gặp lỗi khi xây dựng dự án MSTest mà không cần sdk hoặc studio trực quan được cài đặt; Có một số bài đăng blog về điều này, để xấu giải pháp là quá phức tạp đối với tôi. Tôi sử dụng NUnit thay vì MSTest

+0

Vì máy chủ 2012 của tôi sẽ không cho phép tôi cài đặt .Net 4 vì trình cài đặt cho biết có phiên bản cao hơn . Tôi đã làm những gì @kite nói và sao chép từ một máy tính tôi đã có VS 2012 đã được cài đặt. Điều này giải quyết vấn đề của tôi. – chdev77

23

SDK dành cho .NET 4.5 có sẵn here. Trình cài đặt hoạt động tốt với proxy có ủy quyền cơ bản. Hệ điều hành được hỗ trợ: Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2

P.S. Câu trả lời của tôi giống như một bình luận cho Jeremy answer, nhưng tôi không đủ tiếng để bình luận về câu trả lời.

+0

Điều này làm việc cho tôi. – DenNukem

+1

Từ trang được tham chiếu: "Windows SDK không còn giao hàng với môi trường xây dựng dòng lệnh hoàn chỉnh. Windows SDK hiện yêu cầu trình biên dịch và môi trường xây dựng được cài đặt riêng biệt." Vì vậy, tôi giả định điều này là không đủ để chạy một máy chủ xây dựng. – Chris

+0

Chris, tôi tin rằng bạn là chính xác. – priehl

0

Trang này liệt kê các SDK .NET cho mỗi phiên bản Visual Studio. http://blogs.msdn.com/b/dotnet/p/dotnet_sdks.aspx

Để tải xuống nhỏ hơn, hãy chọn 'gói nhà phát triển' hoặc 'gói nhắm mục tiêu' thay vì Windows SDK đầy đủ.