2010-09-16 28 views

Trả lời

4

Cuối cùng, tôi đã làm việc đó. Phần khó khăn là thực tế là các mục tiêu SharePoint không tồn tại khi MSBuild tải tệp .sln, bạn phải tải các tệp .csproj riêng lẻ.

set msbuild="C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" 
set config=Debug 
set outdir="C:\out\" 
%msbuild% /p:Configuration=%config% /m ../My.SharePoint.Project/My.SharePoint.Projectcsproj /t:Package /p:BasePackagePath=%outdir% 
+0

Có sự khác biệt thực tế nào giữa việc sử dụng '/ t: Gói' so với'/t: Xây dựng/p: IsPackaging = True' không? – JohnC

0

Đặt độ dài của MSBuild thành 'tối đa' và bạn sẽ thấy những gì được gọi từ bảng điều khiển xây dựng.

Trong VS2010 tất nhiên :)

+0

Tôi đặt nó thành 'Chẩn đoán' trước đó, lượng tạp âm mà nó tạo ra không thể tìm thấy bất kỳ thứ gì. – skolima

3

Đây cũng là một tài liệu hữu ích ở đây: http://msdn.microsoft.com/en-us/ff622991.aspx

"Để tạo ra các gói khi xây dựng trong TFS năm 2010, thiết lập các thông số /p: IsPackaging = True trên MSBuild"

1

Ngoài ra để gói dự án với msbuild, bạn có thể sử dụng mục tiêu Gói:

  • Xác định mới mục tiêu "BuildAndPackage"

    <Target Name="BuildAndPackage"> 
        <CallTarget Targets="Build"/> 
        <CallTarget Targets="Package"/> 
    </Target> 
    
  • Sử dụng mục tiêu mới trong quá trình xây dựng:

    <Project ToolsVersion="4.0" DefaultTargets="BuildAndPackage"> 
    

Nhưng điều này không được khuyến khích cách tiếp cận bởi vì nó có thể gây ra lỗi trong quá trình xây dựng TFS ..

+0

Giải pháp tuyệt vời, cảm ơn! –

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