2010-09-16 3 views

risposta

4

ho preso a lavorare, finalmente. La parte difficile è il fatto che le destinazioni di SharePoint non esistono quando MSBuild carica il file .sln, devi caricare i singoli file .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

C'è qualche differenza pratica tra l'uso di '/ t: Package' contro'/t: Build/p: IsPackaging = True'? – JohnC

0

Imposta la verbosità di MSBuild su "maximum" e dovresti vedere ciò che viene chiamato dalla console di build.

In VS2010 ovviamente :)

+0

Prima di impostarlo su "Diagnostica", la quantità di rumore generata non permetteva di trovare nulla. – skolima

1

anche per confezionare progetto con msbuild è possibile utilizzare indirizzare pacchetto:

  • Definire nuovo obiettivo "BuildAndPackage"

    <Target Name="BuildAndPackage"> 
        <CallTarget Targets="Build"/> 
        <CallTarget Targets="Package"/> 
    </Target> 
    
  • Usa nuovo bersaglio nella processo di compilazione:

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

Ma questo approccio non è raccomandato perché potrebbe causare errori nel processo di creazione TFS.

+0

Ottima soluzione, grazie! –