2010-09-16 3 views

ответ

4

Я получил его на работу, в конце концов. Трудная часть заключается в том, что целевые объекты SharePoint не существуют, когда MSBuild загружает файл .sln, вы должны загрузить отдельные файлы .csproj.

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

Есть ли какая-либо практическая разница между использованием '/ t: Package' versus'/t: Build/p: IsPackaging = True'? – JohnC

0

Настроить многословие MSBuild на «максимум», и вы должны увидеть, что вызывается из консоли сборки.

В VS2010 конечно :)

+0

Я установил его на «Diagnostic» раньше, количество создаваемого шума сделало невозможным что-либо найти. – skolima

1

Также для упаковки проекта с msbuild вы можете использовать цель Пакет:

  • Определение новой целевой "BuildAndPackage"

    <Target Name="BuildAndPackage"> 
        <CallTarget Targets="Build"/> 
        <CallTarget Targets="Package"/> 
    </Target> 
    
  • Используйте новые цели в процессе сборки:

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

Но этот подход не рекомендуется потому что это может привести к ошибкам в процессе сборки TFS.

+0

Отличное решение, спасибо! –

Смежные вопросы