2011-07-06 28 views
13

Tôi đang cố gắng thiết lập bản dựng hàng đêm cho một trong các sản phẩm của công ty mình. Khi tôi thực hiện xây dựng, nó không thi hành sau 45 hoặc lâu hơn vài giây, đưa ra các thông báo lỗi "Lỗi phân tích các phần dự án lồng nhau trong tập tin giải phápTeam Foundation Server 2010/MSBuild: Lỗi phân tích phần dự án lồng nhau trong tệp giải pháp

Đây là nhật ký từ xây dựng:.

Xóa Binaries mục

00:17 Xóa Workspace

00:00 Xóa nguồn thư mục

00:00 Tạo Workspace

00:18 Nhận Workspace

00:01 Tạo Label Label [nhãn] (phiên bản W60_2_VMCORPTFS01; CL \ tôi) là tạo thành công.

00:04 Compile, Kiểm tra và Phó changesets và hạng mục công trình

00:04 Compile và Test

00:03 Run MSBuild cho Dự án C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ MSBuild.exe /nologo/noconsolelogger "e: \ localstore \ Productname_2.0 \ Product \ Product.sln" /m: 1/fl /flp: "logfile = e: \ localstore \ ThisSpecificBuild \ Product \ Product.log; encoding = Unicode; độ dài = bình thường " /p: SkipInvalidConfigurations = true /p: OutDir = "C: \ Builds \ 2 \ Product \ ThisSpecificBuild \ Binaries \" /p: Cấu hình = "Gỡ lỗi" /p: Nền tảng = "Bất kỳ CPU" /p: VCBuildOverride = "e: \ localstore \ Productname_2.0 \ Product \ Product.sln.Any CPU.Debug.vsprops " /dl: WorkflowCentralLogger," C: \ Program Tệp \ Microsoft Team Foundation Server 2010 \ Tools \ Microsoft.TeamFoundation.Build.Server .Logger.dll ";" Verbosity = Bình thường; BuildUri = vstfs: /// Xây dựng/Build/2934; InformationNodeId = 1175609; TargetsNotLogged = GetNativeManifest, GetCopyToOutputDirectoryItems, GetTargetPath; TFSUrl = http: // localhost: 8080/tfs/DefaultCollection; "* WorkflowForwardingLogger," C: \ Program Tệp \ Microsoft Team Foundation Server 2010 \ Tools \ Microsoft.TeamFoundation.Build.Server.Logger.dll ";" Verbosit y = Bình thường; "

00:00 Được xây dựng $/OMS/Branches/Product_2.0/Product/Product.sln cho các mục tiêu mặc định. e: \ localstore \ ThisSpecificBuild \ Product \ Product.sln (1586): Lỗi phân tích cú pháp phần lồng nhau dự án trong tệp giải pháp.

Và đây là các bản ghi từ MSBuild:

Build started 2011/07/06 11:53:34. e: \ localstore \ ThisSpecificBuild \ Product \ Product.sln (1586): Lỗi tệp giải pháp MSB5009: Lỗi phân tích cú pháp phần dự án lồng nhau trong tệp giải pháp .

Xây dựng FAILED.

e: \ localstore \ ThisSpecificBuild \ Sản phẩm \ Product.sln (1586): Solution tập tin lỗi MSB5009: Lỗi phân tích các phần dự án lồng nhau trong tập tin giải pháp.

0 Warning(s) 
1 Error(s) 

thời gian trôi qua 00: 00: 00,19

Các giải pháp xây dựng một cách chính xác từ bên trong Visual Studio.

+1

Vậy các dòng trong tệp giải pháp bao quanh dòng 1586 là gì? –

+0

Tôi đã rất vui vì tôi đã không nghĩ về điều đó, nhưng hóa ra chỉ có 942 dòng trong tệp giải pháp. Tôi nghĩ rằng đó có thể là con đường đúng đắn. – Chris

Trả lời

21

Cố gắng loại bỏ và sau đó thêm lại một số tệp để làm cho tệp sln được tạo lại. Bằng cách này tôi đã xây dựng thành công. Tệp sln của tôi có định dạng không chính xác vì một số lý do.

+3

Bí quyết cho tôi - thêm thư mục giải pháp mới, đã lưu, xóa thư mục giải pháp một lần nữa, được lưu. – nover

+1

Bí quyết của tôi cũng vậy - Trong trường hợp của tôi, tệp sln đã sai do hợp nhất. Thiếu "EndProject" – CoperNick

+0

Giải quyết vấn đề 2am của tôi - cảm ơn! – PersonThing

4

Tôi chỉ dành tất cả buổi chiều về điều này và tìm thấy yếu tố góp phần. Tôi tìm thấy mục nhập trong tệp .sln tham chiếu đến một dự án không tồn tại trong giải pháp. Cũng không phải là GUID của dự án phantom được tham chiếu ở bất kỳ nơi nào khác trong tệp .sln.

tìm kiếm trở lại một vài thủ thuật, chẳng hạn như http://social.msdn.microsoft.com/Forums/da-DK/msbuild/thread/55ab07ef-9179-4cc6-b2d0-63fcf088d8ba

Những "dường như" không để làm việc, như địa phương builds vẫn thành công và Team Build vẫn thất bại. Sau đó, tôi nhận thấy rằng dòng 6199 trong giải pháp của tôi là luôn luôn có lỗi, mặc dù dòng đó đã thay đổi theo thời gian. Hóa ra Team Build Definition có Clean Workspace được đặt thành Đầu ra thay vì Tất cả. Sau khi thay đổi nó thành Tất cả, Team Build đã hoạt động trở lại.

0

Để tôi đổi tên dự án của mình và rút ngắn tên dự án đã giúp. Có vẻ như, tùy thuộc vào mục tiêu thư mục tfs là thả giải pháp của bạn, tối đa. chiều dài 256 cho tên tập tin có thể được vượt quá.

2

Nếu bạn đã sửa đổi tệp theo cách thủ công hoặc thông qua công cụ đã hợp nhất, có thể có một dòng trống còn lại, điều này là OK với trình biên dịch Visual Studio, nhưng không thành công trong quá trình tự động hóa.

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