2016-01-18 15 views
10

Właśnie zaktualizowaliśmy z TFS 2010 do TFS 2015 i odtwarzam definicję XAML-Build w formacie "build/workflow" vNext.Publikacja TFS 2015 Buduj artefakty w jednym katalogu

W starej kompilacji można było wypisać wszystkie pliki (biblioteki DLL) w jednym katalogu bez oryginalnej struktury katalogów.

Czy to nadal możliwe dzięki nowej strukturze TFS 2015 Build?

Mam następujący Publish Build Artifact -Settings:

Artifact Type: File Share

Path: \\server\tfslib\$(Build.DefinitionName)\$(Build.DefinitionName)_$(Build.BuildNumber)

Problem polega na tym, że oryginalna struktura katalogów rozwiązanie jest zachowany w katalogu wyjściowym określonym w Path. Jak mogę uzyskać dane wyjściowe bez całego poddrzewa?

Jako obejście robię obecnie z krokiem Powershell po Publish Build Artifact, ale byłoby miło zrobić to podczas samego procesu publikacji.

Odpowiedz

4

To wciąż możliwe, można przekazać następujące wiersza poleceń argumentu do Visual Studio zbudować lub MSBuild zadania:

/p:OutputPath="$(Build.BinariesDirectory)" 

To poinstruuje zadanie gromadzenie przekierować wszystkie dane wyjściowe do katalogu binarnego, tak jak przywykliście do starych kompilacji XAML.

lub można używać MsBuild Helper task z Visual Studio Market Place, aby skonfigurować ścieżki wyjściowej, a następnie dodać zmienną $(MsBuildAdditionalArguments) do msbuild lub wejście dodatkowe argumenty Visual Studio zbudować za:

msbuild Helper Task enter image description here

Visual Studio Build/MSBuild Task enter image description here

1

Spróbuj również podać ten argument MSBuild:

/p:GenerateProjectSpecificOutputFolder=true /p:OutDirWasSpecified=true 
/p:OutputPath=$(Build.BinariesDirectory) 
+0

Nie sądzę, że to nadal działa w Visual Studio 2015/MsBuild 14 i nowsze: https://social.msdn.microsoft.com/Forums/vstudio/en-US/43dcc9cf-8eff-43e2-9292-eeecd1ff3bcf/msbuild -14-generateprojectspecificoutputfolder? Forum = tfsbuild – jessehouwing

Powiązane problemy