Я пытаюсь скомпилировать код для своего приложения MVC через MSBuild.exe
. Раньше я получал ошибки, но спасибо на этот ответ я знаю, в чем проблема.
Я использовал неправильную версию MSBuild.exe
Теперь, когда я знаю, какую версию мне следует использовать, мой скрипт psake не будет работать. не уверен, как я могу нацелиться на MSBuild.exe
, который сидит здесь
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\MSBuild.exe
Моя задача psake Compile
теперь выглядит так, но VS говорит мне, что синтаксис неверен в строке 7.
task Compile `
-description "Compile the code" `
-requiredVariables $solutionFile, $buildConfiguration, $buildPlatform, $tempOutputDirectory `
-depends Init {
Write-Host $compileMessage
Exec {
"C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\MSBuild.exe" $solutionFile "/p:Configuration=$buildConfiguration;Platform=$buildPlatform;OutputDir=$tempOutputDirectory"
}
}
Когда у меня было следующее, VS 2017 не жалуется на синтаксис, но я получаю ошибку WebApplication.targets
при запуске скрипта сборки, и это должно быть потому, что используется неправильная версия MSBuild.
task Compile `
-description "Compile the code" `
-requiredVariables $solutionFile, $buildConfiguration, $buildPlatform, $tempOutputDirectory `
-depends Init {
Write-Host $compileMessage
Exec {
msbuild $solutionFile "/p:Configuration=$buildConfiguration;Platform=$buildPlatform;OutputDir=$tempOutputDirectory"
}
}
Framework "4.5.1"
(замените на версию вашей платформы) в начало моего скрипта сборки волшебным образом заставило все работать. Это не отвечает на ваш вопрос, но, возможно, это, по крайней мере, поможет вам начать работу. - person Jason Boyd   schedule 31.07.2017