| 

.NET C# Java Javascript Exception

3
Hallo allerseits,

ich habe gerade das Problem dass bei einer relativ komplexen Silverlight Anwendung der TFS Build nicht das macht was ich erwarte. In der Solution gibt es ein neues Projekt. Die Assembly des Projekts wird von VS auch korrekt in das ../bin Verzeichniss der Webanwendung kopiert.

Wenn ich jetzt das selbe Projekt aber per TFS baue, fehlt mir die Assembly im ../bin Verzeichniss unter _PublishedWebsites in der Webanwendung. Die Assembly wird aber vom TFS erstellt. In den Artefakten sehe ich die Assembly.

Ich finde nur gerade nicht warum der TFS Build die Assembly nicht in das korrekte Verzeichniss kopiert. Jemand eine Idee?
06.05.2011
Gast
31 1
1 Antwort
1
Bei einem TFS Build ist die Build-Struktur eine andere als bei einem Desktop-Build (also einem Build mit Visual Studio). Das Beste ist, Du schaust Dir das Verzeichnis an, welches der Buildagent nutzt, um die Sourcen auszuchecken und zu kompilieren. Dort wird Dir auffallen, dass es neben dem Source-Verzeichnis auch ein Binaries-Verzeichnis gibt. Sämtliche kompilierten Ergebnisse landen nun nicht mehr in den bin-Verzeichnissen des Source-Trees, sondern im Binaries-Verzeichnis. Damit stimmen Deine Pfadangaben nicht mehr und das Assembly fehlt. Zu diesem Zweck habe ich die jeweiligen Build-Dateien angepasst. Wenn Desktop-Build, dann aus bin, sonst aus Binaries.

Da ich mir denke, dass die Frage sowieso kommt, hier ein kleines Beispiel aus einem WiX-Setup-Projekt:

<ItemGroup Condition=" '$(IsDesktopBuild)' == 'false' ">
Visual Studio Build-Aktionen

oder

<ItemGroup Condition=" '$(IsDesktopBuild)' == '' ">
Team Build-Aktionen
06.05.2011
1
Erstmal Danke für den Hinweis. Muss ich mir anschauen. Es wundert mich nur dass es für ein Projekt welches bereits in der Solution im gleichen Ordner existiert funktioniert, ohne dass ich jetzt wüsste dass dort etwas spezielles konfiguriert wurde.
– Gast 06.05.2011

Stelle deine Tfs-Frage jetzt!
infounit Software GmbH
myfactory International GmbH
Sevitec Gruppe
InnoGames GmbH