Перенаправить выходной путь MSBuild при использовании Cake - PullRequest
0 голосов
/ 26 сентября 2018

Исходя из подделки Я привык хранить стандартный вывод файлов csproj в bin / debug для возможности локальной отладки.Но когда я запускаю свой скрипт сборки, я хочу, чтобы файлы были скомпилированы в / bin / build для создания сценариев установки или пакетов nuget.

Я попробовал его с помощью cake, но без успеха:

Task("Build")
.DoesForEach( GetFiles ("**/*.sln" ), (sln) =>
   var settings = new MSBuildSettings()
    .WithProperty("OutputPath", buildDir);
   MSBuild(sln, settings);
});

Он производит правильный вызов для MSBuild

"C:/.../MSBuild.exe" /v:normal /p:OutputPath=bin/build /target:Build ...

, но, к сожалению, каталог назначения пуст?Я что-то упустил?

Заранее спасибо

1 Ответ

0 голосов
/ 26 сентября 2018

OutputPath должен быть абсолютным путем, попробуйте что-то вроде:

Task("Build")
.DoesForEach( GetFiles ("**/*.sln" ), (sln) =>
    DirectoryPath buildDir = MakeAbsolute(Directory("./bin/build"));
    // Use MSBuild
    var settings = new MSBuildSettings()
                        .WithProperty("OutputPath", buildDir.FullPath);
    MSBuild(sln, settings);
});
...