2012-09-19 24 views
22

Projemi derlemek için bir komut dosyasından MSBuild kullanıyorum. Ben sadece bir inşa ve temiz/yeniden inşa değil, fark ettim.MSBuild'i temizlemek veya yeniden oluşturmak için nasıl zorlayabilirim?

Ben şu var:

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Build" ToolsVersion="4.0"> 
<Target Name="Build"> 
    <MSBuild Projects="$(MSBuildProjectDirectory)\myproj.csproj" Targets="Build" Properties="OutputPath=$(MSBuildProjectDirectory)\..\bin\" /> 
</Target> 

nasıl temiz zorlamak/yeniden?

cevap

29

Değişim

<MSBuild Projects="$(MSBuildProjectDirectory)\myproj.csproj" 
    Targets="Build" 
    Properties="OutputPath=$(MSBuildProjectDirectory)\..\bin\" /> 

<MSBuild Projects="$(MSBuildProjectDirectory)\myproj.csproj" 
    Targets="Clean;Build" 
    Properties="OutputPath=$(MSBuildProjectDirectory)\..\bin\" /> 

veya daha fazla ayrıntı için

<MSBuild Projects="$(MSBuildProjectDirectory)\myproj.csproj" Targets="Rebuild" 
    Properties="OutputPath=$(MSBuildProjectDirectory)\..\bin\" /> 

e MSBuild Task documentation bak.

+0

Yanıtı gördüğünüzde bariz görünüyor. Bu probun bir tane olması gerekiyor. Cevap için teşekkürler – John

+0

Yeni _csproj_ hakkında ne dersiniz? – Shimmy

15

"% windir% \ Microsoft.NET \ Framework \ v4.0.30319 MSBuild \" Project.sln /p: Yapılandırma = Yayın/t:

Daima
+0

Soruda, msbuild bir proje dosyasında kullanılır. Doğrudan komut isteminde değil. – warunapww

+0

"Bir projeyi derlemek için bir komut dosyasından msbuild kullanıyorum" bir komut dosyasından daha iyi kullanım komut istemi – Geograph

+0

Özgün soruya cevap verip vermediği sorulursa, pasaj gitmek için nereye ihtiyacım oldu? – madannes

1

kullanmayı deneyin Yeniden

<MSBuild Projects="$(MSBuildProjectDirectory)\myproj.csproj" 
    Targets="Clean;Build" 
    Properties="OutputPath=$(MSBuildProjectDirectory)\..\bin\" /> 

this MSDN article'a göre, çözümünüzde "Rebuild" i kullanarak birden fazla projeye sahip olduğunuzda, temiz ve yapının paralel olarak gerçekleşmesine neden olabilir. Bu, proje bağımlılıklarında sorunlara neden olabilir.

Ancak "Temiz ve Oluştur" u hedef olarak kullandığınızda, derleme tüm projeler temizlendikten sonra başlayacaktır.