HowTo: TeamCity & Web Application Projects

imageTeamCity ist ein sehr nette Build- & CI-Lösung. Wenn man allerdings ein Web Application Project in seiner Solution hat (z.B. ein ASP.NET MVC Projekt), wird es wahrscheinlich erstmal nicht bauen, weil ein MSBuild “Target” nicht ausgeführt wird. Mit einem kleinen Trick geht auch dies.

.csproj – MSBuild

Wer mal ein Blick in eine Projektdatei geworfen hat, wird feststellen, dass dies eine XML Datei ist. Was man vor sich sieht ist MSBuild. Dort stehen für das bauen verschiedenste Anweisungen drin.

Web Application Projects

Wenn man ein “Web Application Project” hat, z.B. eine ASP.NET MVC Anwendung oder eine andere ASP.NET Anwendung, dann wird u.a. automatisch ein “Target” in der Projektdatei verlinkt:

  <Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets" />

TeamCity / Build Server + Web Application Projects

Wenn man diese Projektdatei nun mit bei einem Build Server nutzen kann, muss dieses target auch auf dem Build Server vorhanden sein. Dazu muss man zwei Datein von dem Entwicklerrechner auch auf dem Build Server kopieren:

  • Microsoft.WebApplication.Build.Tasks.Dll
  • Microsoft.WebApplication.targets

Beide befinden sich (standardmäßig) unter diesem Pfad:

C:\Program Files\MSBuild\Microsoft\VisualStudio\v9.0\WebApplications

Damit nun auch das bauen mit dieser Projektdatei klappt, muss derselbe Pfad mit den beiden Datein auch auf den Build Server vorhanden sein.

1 Kommentar bisher »

  1. Fix: “Microsoft.WebApplication.targets was not found.” | Code-Inside Blog sagt

    am 29. April 2010 @ 22:43

    [...] Zusammenhang mit TeamCity ist mir dieser “Bug” bereits aufgefallen. Mit dem neuen TFS2010 hat sich das auch nicht geändert, daher der “nochmalige” [...]

Komentar RSS · TrackBack URI

Hinterlasse einen Kommentar

Name: (erforderlich)

eMail: (erforderlich)

Website:

Kommentar: