2016-07-22 6 views
1

안녕하세요, MSBuild & Psake를 사용하여 프로젝트를 컴파일하려하지만/m을 MSBuild로 전달하는 데 문제가 있습니다. 여기 내 코드입니다 :Psake - MSBuild를 활성화/m 스위치하는 방법?

Exec { 
    MSBuild $solutionFile "/p:Configuration=$buildConfiguration;Platform=$buildPlatform;OutDir=$tempPath /m" 
} 

은 MSBuild의 출력 : /m가 출력 경로의 일부가 사전에 지금

Error: 7/22/2016 12:39:04 AM: At C:\Users\mabre.nuget\packages\psake\4.6.0\tools\psake.psm1:156 char:17 + throw ("Exec: " + $errorMessage) +
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [<<==>>] Exception: Exec: Error executing command MSBuild $solutionFile "/p:Configuration=$buildConfiguration;Platform=$buildPlatform;OutDir=$tempPath /m" . Build exit code: 1

감사 것을

"C:\Users\mabre\Source\Psake\Psake.sln" (default target) (1) -> "C:\Users\mabre\Source\Psake\src\Psake.Library\Psake.Library.xproj" (default target) (5) -> C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\DotNet\Microsoft.DotNet.Common.Targets(262,5): error : Could not find a part of the path 'C:\Users\mabre\Source\Psake.build\temp \m\src\Psake.Library\obj\Release\netstandard1.6'. [C:\Users\mabre\Source\Psake\src\Psake.Library\Psake.Library.xproj]

0 Warning(s) 
4 Error(s) 

+0

그것이 Psake이 후에 추가 할 수도 있습니다 무엇에 의해 영향을받지 않도록 당신이 대신 마지막의 먼저'/ m'을 넣어 시도 했습니까? – stijn

답변

3

모든 인수를 하나의 문자열에 넣지 않고 사용해보십시오.

Task CleanProject -depends RestoreNuget { 
    Exec { 
     msbuild ` 
      "$VisualStudioSolutionFile" ` 
      /target:Clean ` 
      /property:Configuration=$Configuration ` 
      /verbosity:quiet 
    } 
} 

하고 ... 내가 5 월에 공백이 포함되어 생각되는 변수 주위에 "을 넣어

Task BuildProject -depends DeleteBinAndObjFolders { 
    Exec { 
     msbuild ` 
      "$ProjectPath" ` 
      /target:Rebuild ` 
      /property:Configuration=$Configuration ` 
      /property:OutDir="$ProjectBuildArtifactsPath" ` 
      /property:UseWPP_CopyWebApplication=True ` 
      /property:PipelineDependsOnBuild=False ` 
      /property:WebProjectOutputDir="$WebBuildArtifactsPath" ` 
      /verbosity:quiet 
    } 
} 

참고 : 여기 내 MSBuild에서 작업이 pSake에서 어떻게 보이는지의 두 가지 예입니다.

그래서 당신이 뭔가를 시도 :

Exec { 
    MSBuild "$solutionFile" /p:Configuration=$buildConfiguration;Platform=$buildPlatform;OutDir="$tempPath" /m 
} 
+0

Pefect, 고마워요! – Miguel