2017-05-24 4 views
3

웹 작업 "WebJob1"을 사용하는 웹 응용 프로그램 "WebApplication2"(Azure API)가 있습니다. 웹 응용 프로그램과 함께 응용 프로그램을 zip 파일로 패키지화하여 패키지를 클라우드에 배포하려고합니다. 내가 Visual Studio (Publish -> web deploy 패키지)를 통해 할 때 그것은 매력처럼 작동합니다. 내가 MSBuild를 통해 그것을 할 노력하고있어 때 (자동화 목적)이 오류를 받고 있어요 : 명령을 :웹 작업으로 azure web app 컴파일 및 패키징시 "경로에 잘못된 문자가 있음"오류가 발생했습니다.

C:\Program Files (x86)\MSBuild\14.0\Bin>MSBuild.exe "C:\Users\levs\Documents\Visual Studio 2015\Projects\WebApplication2\WebApplication2\WebApplication2.csproj" /p:OutputPath="C:\Users\levs\Documents\webPublish\MSBuildOutputPath" /p:DeployOnBuild=true /p:PackageLocation=C:\Users\levs\Documents\webPublish\test.zip /verbosity:m 

출력 :

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\Web\Microsoft.Web.Publishing.targets(2606,5): error : Copying file C:\Users\levs\Documents\webPublish\MSBuildOutputPath**\*.* to obj\Debug\Package \PackageTmp\app_data\jobs\continuous\WebJob1\*.* failed. Illegal characters in path. [C:\Users\levs\Documents\Visual Studio 2015\Projects\WebApplication2\WebApplication2\WebApplication2.csproj] 

당신이 어떤 생각을 가지고 있습니까 무엇을 내가 잘못하고있어?

현재, MSBuild와 별도로 각 프로젝트 (응용 프로그램과 webjob)를 컴파일합니다.

은 MSBuild 버전 : 마이크로 소프트 (R) 빌드 엔진 버전 14.0.25420.1

+0

"D : \ src"와 같은 직접 폴더 위치로 소스 코드를 이동하려고 시도 했습니까?이 문자 수가이 문제를 가지고 있습니다. 이것은 정확하게는 아닙니다. 그러나 당신은 이것을 시도 할 수 있습니다. – Aravind

+0

'MSBuildOutputPath **'가 msbuild에 의해 해석되지 않기 때문에 명령에서'MSBuildOutputPath' 뒤에 슬래시를 추가하십시오. 'MSBuildOutputPath \ ** '이어야합니다. – Troopers

+0

이미 두 가지 제안을 시도했지만 성공하지 못했습니다. –

답변

0

당신은 자동화를 스크립팅에 사용했다하지만 난 내 웹 작업과 케이크에서의 MSBuild를 사용하여 유사한 문제가 했어 어떤 확실하지. 바라기를 이것은 동일한 문제점에 비틀 거린 누군가를 도울지도 모른다.

Copying C:\Test\Portal.WebApp\build\Package**\*.* to obj\Release\Package\PackageTmp\app_data\jobs\triggered\PortalWebJob\*.* 

내가 믿는 문제는이 부분이었다 : 복사하는 동안

내 원래 경로가이 있었다.

Package**\*.* 

이 문제를 해결하기 위해 내 OutputPath의 끝에 슬래시를 추가했습니다.

settings.WithProperty("OutputPath", MakeAbsolute(packageDir).ToString() + "/"); 

나를 위해 일을 해결하기 위해 듯, 나는 당신이 케이크 스크립트를 사용되지 않는 수 있지만 희망이 옳은 방향으로 당신을 조종 할 수 알고있다.