2010-04-28 3 views
95

누구나 CI 서버에 Visual Studio 2010을 설치하지 않고 CI 서버에서 컴파일하는 .NET 4.0 응용 프로그램을 관리 할 수 ​​있습니까?CI 서버에 .NET 4.0 빌드 문제

.NET 4.0 용 SDK가 없습니다. CI 서버에 .NET 4.0을 설치하십시오. MSBuild.exe를 간단한 프로젝트를 위해 작동하고 다음과 같은 경고 제공 :

(GetReferenceAssemblyPaths target) -> C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(847,9): warning MSB3644: The reference assemblies for framework ".NETFramework,Version=v4.0" were not found. To resolve this, install the SDK or Targeting Pack for this framework version or retarget your application to a version of the framework for which you have the SDK or Targeting Pack installed. Note that assemblies will be resolved from the Global Assembly Cache (GAC) and will be used in place of reference assemblies. Therefore your assembly may not be correctly targeted for the framework you intend.

+1

어떻게하면 경고가 아닌 치명적인 오류를 만들 수 있습니까? 그것은 빌드 로그에 숨겨져 있으며 mscorlib.dll에 대한 몇 가지 숨겨진 메시지로 더 이상 실패합니다. –

답변

125

당신은 당신은 지금 "Windows 7 및 .NET 프레임 워크 4는 Microsoft의 Windows SDK"를 설치할 수 있습니다, 더 이상 VS를 설치할 필요가 없습니다합니다.

http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=6b6c21d2-2006-4afa-9702-529fa782d63b

+43

기본 설치는 1.7GB이지만이 파일의 대부분은 불필요합니다. .NET Development> Intellisense 및 Reference Assemblies를 제외한 모든 항목의 선택을 취소하면 필요한 .NET 4 대상 지정 팩 (약 450MB)이 제공됩니다. –

+1

또한 .NET 개발> 도구를 선택하여 sn과 같은 여러 유틸리티를 가져올 수 있습니다.exe는 서명 된 어셈블리를 다루기에 편리합니다. – Mykro

+0

설치 프로그램을 다운로드했는데 실행했을 때 이미 .net 4가 설치되어 있지만 Intellisense 및 참조 어셈블리는 선택 취소되었다고합니다. 그것을 확인하고, 그 파일을 설치하는 것은 저를 위해 문제점을 고치는 것을 보였다. 이상한 점은, 저는이 CI 구축을 몇 달 동안 진행해 왔으며, 지금 바로이 오류를 던지기 시작한 것입니다. – Carl

10

다른 대안 : 순 4.0 SDK를 설치하지 않고 또는 2010

복사 dev에 기계에서 참조 어셈블리 폴더 구축 서버 (190메가바이트) 대.

사용으로 MSBuild -p :

C : \ Program 파일 (x 86) \ 참조 어셈블리 \ 마이크로 소프트 \ 프레임 워크 \ .NETFramework \ V4 FrameworkPathOverride 옵션은

참조 어셈블리의 위치 어셈블리 폴더를 참조하는 데 가리 0.0 또는 C는 :

: \ 프로그램 파일 \ 참조 어셈블리 \ 마이크로 소프트 \ 프레임 워크 \ .NETFramework \ 4.0

은 이걸 발견 10

이 오류가 나타나면 : "Microsoft.WebApplication.targets를 찾을 수 없습니다"- 단지 dev에 컴퓨터에서 대상을 복사를 https://stackoverflow.com/a/5344246/423356

mvc3가 빌드 서버에 설치되어 있지 않은 경우, "배포 가능한 어셈블리"를 mvc 프로젝트에 추가하십시오. http://haacked.com/archive/2011/05/25/bin-deploying-asp-net-mvc-3.aspx

sdk 또는 Visual Studio를 설치하지 않은 상태에서 MSTest 프로젝트를 빌드하는 중 오류가 발생했습니다. 이 문제에 대한 몇 가지 블로그 게시물이 있습니다. 솔루션은 나에게 너무 복잡합니다. MSTest 대신 NUnit을 사용합니다.

+0

2012 년 서버에서 설치 프로그램이 더 높은 버전이 있다고했기 때문에 .Net 4를 설치할 수 없으므로 . 나는 @ kite가 말했던 것과 VS 2012가 설치된 PC에서 복사 한 것을했습니다. 이 문제가 해결되었습니다. – chdev77

23

SDK for .NET 4.5를 사용할 수 있습니다. here. 설치 프로그램은 기본 인증을 사용하여 프록시와 잘 작동합니다. 지원되는 운영 체제 : Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2

P.S. 내 답변은 Jeremy answer에 대한 댓글과 같지만 답변에 대한 평판이 부족합니다.

+0

이것은 나를 위해 일했습니다. – DenNukem

+1

참조 페이지 : "Windows SDK는 더 이상 완전한 명령 줄 작성 환경과 함께 제공되지 않습니다. 이제 Windows SDK는 컴파일러와 빌드 환경을 별도로 설치해야합니다." 그래서 이것은 빌드 서버를 실행하기에 충분하지 않다고 가정합니다. – Chris

+0

크리스, 당신이 옳다고 믿습니다. – priehl

0

이 페이지는 각 Visual Studio 버전에 대한 .NET SDK를 나열합니다. http://blogs.msdn.com/b/dotnet/p/dotnet_sdks.aspx

작은 다운로드의 경우 전체 Windows SDK가 아닌 '개발자 팩'또는 '대상 지정 팩'을 선택하십시오.