2016-07-02 2 views
5

내 팀 프로젝트에 CI를 구성하려고하는데 빌드가 첫 번째 라이브러리 프로젝트를 지나치지 않습니다. 잠금 파일이 누락되었다고 불평하고 있습니다. 복원하려면 너겟을 구성했지만 잠금 파일을 만들지 않는 것 같습니다. 자식은 잠금 파일을 무시하므로 저장소에 저장되지 않습니다.Visual Studio Team Services에서 프로젝트 빌드가 실패합니다. 잠금 파일이 없습니다.

Summary 
| Build 
3 error(s), 0 warning(s) 
Build - 3 error(s), 0 warning(s) 
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\DotNet\Microsoft.DotNet.Common.Targets(241):Project Core does not have a lock file. 
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\DotNet\Microsoft.DotNet.Common.Targets(241):Project Core does not have a lock file. 
Process 'msbuild.exe' exited with code '1'. 
| Finalize build 
0 error(s), 0 warning(s) 

누구나 잠금 파일을 만드는 방법을 알고 있습니까?

내 솔루션은 ASP.NET Core RC2 웹 사이트입니다. VS 2015에서 정상적으로 빌드됩니다. Microsoft는 ASP.NET Core를 지난주에 발표 했으므로 빌드 서버에 있어야합니까? 아니면 자체 빌드 서버를 만들어야합니까?

다음은 핵심 라이브러리 내 project.json 파일의 내용입니다 :

{ 
    "version": "1.0.0-*", 

    "dependencies": { 
    "Microsoft.AspNetCore.Identity": "1.0.0-rc2-final", 
    "Microsoft.AspNetCore.Mvc": "1.0.0-rc2-final", 
    "Microsoft.EntityFrameworkCore": "1.0.0-rc2-final", 
    "Microsoft.Extensions.Caching.Abstractions": "1.0.0-rc2-final", 
    "Microsoft.Extensions.Logging": "1.0.0-rc2-final", 
    "NETStandard.Library": "1.5.0-rc2-24027", 
    "NodaTime": "2.0.0-alpha20160523" 
    }, 

    "frameworks": { 
    "netstandard1.5": { 
     "dependencies": { 
     "System.ComponentModel.Annotations": "4.1.0-rc2-24027" 
     }, 
     "imports": [ "dnxcore50", "portable-net45+win8" ] 
    } 
    } 
} 
+0

이것은 Hosted Build 서버에 설치된 것입니다. https://www.visualstudio.com/en-us/docs/build/agents/hosted-pool#software. Visual Studio Update 2가 아직 실행 중이라는 것을 감안할 때 아직 ASP.NET Core RC2가 없을 것으로 예상됩니다. – jessehouwing

+0

VS Team Services를 시도하지는 않았지만 기본적으로 이것이 '도트 넷 복원'을 실행하지 않았다는 것을 의미합니다. – Pawel

+0

난 방금 VS 2015, 업데이트 3 내 dev에 상자를 업데이 트 어제. 내 빌드는 Update 2에서 작동했습니다. @jessehouwing이 참조하는 목록을 살펴본 후에 Core가 전혀 언급되지 않았 음을 알 수 있습니다. 아마도 그것이 잠금 파일을 생성하지 않는 이유 일 것입니다. 나는 MS가 호스팅 된 빌드 서버에 포함 시키거나 내 서버를 만들 때까지 기다려야 할 것이다. – phitch

답변

8

당신은 당신의 빌드 정의에 새로운 빌드 단계를 추가하여이 문제를 해결할 수 있습니다.

'명령 줄'태스크를 빌드 정의의 1 단계로 추가하십시오. 이 작업

설정은 다음과 같습니다

도구 : DOTNET

인수 : 빌드 정의에 다음과 같은 변수를 추가하여 또한 조금이 속도를 높일 수 있습니다

복원 DOTNET_SKIP_FIRST_TIME_EXPERIENCE = true

+0

감사합니다. @jessehouwing이 남긴 의견에서이 문제를 찾아 냈습니다. 그러나 그는 내가 할 수있는 대답을 남기지 않았습니다. 아마도 나는 내 자신의 질문에 대답 했어야했는데, 나는 대답을 주었다. 나는 너를 답으로 표시 할 것이다. – phitch

관련 문제