2013-08-20 49 views
6

Tôi đã gỡ lỗi một vấn đề trong một ngày và dường như không thể tìm ra nó. Có lẽ một người khác đã chạy vào một cái gì đó tương tự và có thể làm sáng tỏ một số?Bộ điều khiển xây dựng được lưu trữ trên TFS - Microsoft.TextTemplating.targets không tìm thấy

Chúng tôi đã định cấu hình tất cả các mẫu T4 trong một dự án trong giải pháp của chúng tôi để chạy khi dự án được xây dựng, như trong shift-ctrl-b. Đây hoạt động tuyệt vời - nó đòi hỏi chúng tôi để thêm tuyên bố nhập khẩu này để dự án csproj file:

<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\TextTemplating\Microsoft.TextTemplating.targets"/> 

Chúng tôi đã thiết lập tích hợp liên tục thông qua Visual Studio 2012 và đám mây TFS (tfs.visualstudio.com). Khi giải pháp của chúng tôi đang được xây dựng trên bộ điều khiển tổ chức TFS', chúng tôi tiếp tục nhận được lỗi sau:

The imported project "C:\Program Files\MSBuild\Microsoft\VisualStudio\v10.0\TextTemplating\Microsoft.TextTemplating.targets" was not found. Confirm that the path in the declaration is correct, and that the file exists on disk.

Trên máy dev của chúng tôi, các tập tin tồn tại và do đó vấn đề dường như là các tập tin không tồn tại trên được lưu trữ trên máy chủ.

Nếu chúng ta đúng với giả định này, liệu có giải pháp cho vấn đề này ngoài việc cài đặt máy chủ xây dựng TFS của riêng chúng ta?

Trả lời

4

Tôi nghi ngờ các máy chủ được lưu trữ được lưu trữ có Visual Studio 2010 (v10.0) trên chúng.

Bạn có thể nhận danh sách những gì hiện được cài đặt trên máy chủ lưu trữ được lưu trữ here, Tarun Arora có thêm chi tiết here.

Đối với vấn đề của bạn, hãy thử phiên bản 11.0 (đối với VS2012) thay vì:

<Import Project="$(MSBuildExtensionsPath) 
    \Microsoft\VisualStudio\v11.0\TextTemplating\Microsoft.TextTemplating.targets"/> 

Một cách tiếp cận tốt hơn sẽ được sử dụng tài sản VisualStudioVersion MSBuild:

<Import Project="$(MSBuildExtensionsPath) 
    \Microsoft\VisualStudio\v$(VisualStudioVersion)\TextTemplating\Microsoft.TextTemplating.targets"/> 

này sẽ đảm bảo rằng bản cập nhật trong tương lai để Hosted Build Servers không ảnh hưởng đến mã của bạn. Đọc số here để biết thêm chi tiết.

+1

Cảm ơn bạn đã quay lại. Ban đầu tôi đã sử dụng phiên bản v11.0 và vẫn nhận được lỗi tương tự. – user2700639

+0

Vâng không hoạt động với tôi cũng như –

+0

Cách tiếp cận thứ hai cũng không hoạt động. (( –

1

Có thể một số tệp bị thiếu. :) Vì vậy, tôi đã ở tình trạng tương tự. Đây là giải pháp.

Các giải pháp đúng là cài đặt

Microsoft Visual Studio 2010 Visualization & Modeling SDK http://www.microsoft.com/en-us/download/confirmation.aspx?id=23025

Nó tạo ra các thư mục

C: \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ TextTemplating và các tệp Microsoft.TextTemplating.targets và những người khác

Microsoft Visual Studio 2012 Visualization & Modeling SDK http://www.microsoft.com/en-us/download/confirmation.aspx?id=30680

Nó tạo ra các thư mục

C: \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v11.0 \ TextTemplating và các tệp Microsoft.TextTemplating.targets và những người khác

Tận hưởng! ;)

P.S. Bằng cách nào đó Microsoft Visual Studio 2010 Visualization & Modeling SDK tạo thư mục ở đây

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\TextTemplating\v10.0

0

File Microsoft.TextTemplating.targets đi kèm với chi phí có thể bạn không cần (Modeling SDK cho Microsoft Visual Studio). Bạn có thể dễ dàng thoát khỏi gói NuGet đơn giản biến đổi trên bản dựng (sử dụng TextTransform.exe): Clarius.TransformOnBuild.

Để biết thêm thông tin, xem blog post của tác giả.

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