2015-07-27 19 views
15

đây là cảnh:Cập nhật Build Controller/Đại lý để xây dựng C# 6 /.NET 4.6 ứng dụng

Chúng tôi sử dụng Visual Studio trực tuyến và một tại công ty xây dựng máy chủ trong mạng công ty chúng tôi với TFS năm 2013 để xây dựng giải pháp của chúng tôi sau khi gated đăng ký và phát hành.

Bây giờ chúng tôi đã nâng cấp từ Visual Studio 2013 lên Visual Studio 2015 Enterprise và nâng cấp lên phiên bản .NET mới. Chúng tôi thực sự háo hức sử dụng các tính năng mới của C# 6 nhưng sau lần kiểm tra đầu tiên, chúng tôi đã gặp phải sự cố không thành công.

(Xin lỗi không có hình ảnh ở đây như tôi có một thiếu uy tín)

Exception nhắn: MSBuild lỗi 1 đã kết thúc xây dựng này. Bạn có thể tìm thấy thông tin cụ thể hơn về nguyên nhân của lỗi này ở trên thư. (Loại BuildProcessTerminateException) Exception Stack Trace: tại System.Activities.Statements.Throw.Execute (CodeActivityContext ngữ cảnh) tại System.Activities.CodeActivity.InternalExecute (ActivityInstance dụ, ActivityExecutor thi hành di chúc, BookmarkManager bookmarkManager) tại System.Activities .Runtime.ActivityExecutor.ExecuteActivityWorkItem.ExecuteBody (ActivityExecutor executor, BookmarkManager bookmarkManager, Location resultsLocation) ApplicationManager.cs (33, 0) Ký tự không mong muốn '$' ApplicationManager.cs (33, 0); mong đợi

Dường như tác nhân tạo không hiểu cú pháp mới và vẫn biên dịch với phiên bản cũ.

Tôi đã làm gì để sửa chữa nó là:

  • Cài đặt Visual Studio 2015 trên việc xây dựng máy chủ trên tiền đề (phiên bản cũ hơn Visual Studio 2013 vẫn còn được cài đặt)

  • Khởi động lại xây dựng bộ điều khiển

  • Tiếp theo các bước tại đây: https://stackoverflow.com/a/28327275/4919063

Đó là về cơ bản cài đặt Visual Studio 2015 và Microsoft mới Xây dựng Công cụ

  • Và các bước trong here mà là rất hứa hẹn:

Tôi tạo ra một định nghĩa mới xây dựng với một trong những mẫu

Đã tạo nhóm đại lý mới thông qua truy cập web cho Visual Studio Online. Đã tải xuống

ConfigureAgent.ps1 và thực thi nó trên máy chủ tạo để tạo một đại lý mới

. Nhưng tôi không thể tìm ra cách sử dụng tác nhân mới được tạo ra.

Câu hỏi của tôi là: Làm thế nào tôi có thể cập nhật các đại lý xây dựng để chạy mà không có thất bại trong

đối với các phiên bản .NET mới?

Trả lời

14

Tôi nghi ngờ rằng bạn đang chạy tác nhân Phiên bản 2013 vẫn còn? Trong trường hợp đó, hãy mở mẫu quy trình xây dựng của bạn và tra cứu nhiệm vụ "Chạy Msbuild cho dự án". Đặt thuộc tính ToolPath đến vị trí mà v14 MsBuild của bạn được cài đặt. Mặc định:

C:\Program Files (x86)\MSBuild\14.0\Bin 

Điều đó sẽ cho phép bạn sử dụng các phần tử cú pháp C# 6.

Xóa the steps from this post bằng cách xóa gói gói Roslyn, gói NuGet không còn cần thiết bây giờ mà Visual Studio 2015 là RTM. Gói tương tự không còn được hỗ trợ cho VS2013 nữa.

Tác nhân xây dựng TFS 2015 mới mà bạn tải xuống không trao đổi với TFS 2013, cũng không phải tác nhân tạo XAML TFS 2015. Miễn là máy chủ của bạn đang chạy TFS 2013, bạn đang bị mắc kẹt khi sử dụng TFS Build 2010 đến và kể cả năm 2013.

Khi kết nối với VSO you should be able to use the new 2015 build agent. Nhưng bạn cần phải tạo một định nghĩa xây dựng mới bằng cách sử dụng giao diện Web. Bạn không thể sử dụng định nghĩa xây dựng XAML exuiting của bạn với tác nhân xây dựng mới.

Bạn cũng có thể cài đặt tác nhân TAM 2015 XAML. Để cài đặt nó install TFS 2015 on the build server and only run the steps to configure the XAML build agent. Thao tác này sẽ xóa máy chủ xây dựng TFS 2013 khỏi máy của bạn.

+0

Cảm ơn bạn rất nhiều vì câu trả lời của bạn! –

+1

Khi đặt ToolPath, hãy chắc chắn rằng bạn bao quanh đường dẫn với dấu ngoặc kép. Nếu không, bạn sẽ nhận được lỗi xây dựng 'Các lỗi biên dịch gặp phải biểu thức xử lý" C: \ Program Files (x86) \ MSBuild \ 14.0 \ Bin "' –

7

Tôi không thể đặt thuộc tínhCông cụPath vì "Chạy Msbuild cho dự án" được thay thế bằng trừu tượng hơn "Chạy MSBuild" -Hoạt động trong "TfvcTemplate.12.xaml" đã sử dụng của tôi. Tôi nghĩ nó đi kèm với Bản cập nhật TFS 2013 4.

Tôi đã cài đặt VS 2015 trên BuildMachine.

Và tôi đã thay đổi được xây dựng bằng cách thêm Parameter /tv:14.0 như là đối số MSBuild (trong Build-Definition \ Process \ 2.Build \ 5.Advanced \ MSBuild arguments)

này đã làm việc cho tôi. Xem câu trả lời từ marson

Các vấn đề liên quan