[asp.net] 빌드 서버에서 Visual Studio없이 ASP.NET 4.5 빌드

빌드 서버를 설정 한 지 오래되었으므로 뭔가 잊었거나 .NET 4.5가 지난번에 한 버전과 다를 수 있지만 여기에 내 문제가 있습니다.

소스 제어 저장소를 모니터링하기 위해 빌드 서버를 설정하려고합니다. 뭔가 변경 될 때마다 서버가 변경 사항을 가져 와서 프로젝트를 빌드하기를 원합니다. 오류가 없으면 빌드 서버에서 실행되는 웹 사이트에 사이트를 배포하고 싶습니다.

예전에는 .NET 만 설치하면 할 수 있다고 생각했는데이 프로젝트를 빌드하려고하면 “C : \ Program Files \ MSBuild \ Microsoft \ VisualStudio \ v11 .0 \ WebApplications \ Microsoft.WebApplication.targets “가 누락되었으며, 가서 보면 누락 된 것을 알 수 있습니다. 실제로 Visual Studio 11 대상 파일이 없습니다.

많은 생각과 머리를 긁은 후 나가서 .NET 4.5 SDK가 필요한 대상 파일을 설치할 수 있다고 생각한 “Windows 8 / .NET 4.5 SDK”를 얻었습니다. 그러나 어떻게 든 잘못 설치하지 않는 한 그렇지 않습니다. .

따라서 프로젝트를 빌드하려면 빌드 서버에 무엇을 입력해야합니까? 전체 Visual Studio 2012를 설치할 필요가 없습니다.



답변

내 문제는 Windows 2008 Box에 Windows 8 용 Windows SDK (소프트웨어 개발 키트) 를 설치하는 것과 관련이 있습니다. 이 페이지에서 더 자세히 읽으면 “Windows Vista 및 Windows Server 2008의 .NET Framework 4.5 SDK 도구”라는 제목이 표시됩니다. 이것은 다음을 알려줍니다.

  1. 지원되는 운영 체제 (예 : Windows 7 또는 Windows 8)에서 Windows 8 용 Windows SDK 설치 관리자를 실행합니다.
  2. 위치 지정 화면에서 다음 옵션을 선택합니다. 별도의 컴퓨터에 설치할 Windows SDK를 다운로드합니다.
  3. 다음 버튼을 누릅니다.
  4. CEIP (사용자 환경 개선 프로그램) 참여 화면의 질문에 답합니다.
  5. 다음 화면에서 .NET Framework 4.5 소프트웨어 개발 키트 기능을 선택합니다. 선택 취소 할 수있는 다른 모든 기능을 선택 취소합니다.
  6. 다운로드 버튼을 선택합니다.
  7. 다운로드 위치 (2 단계에서 지정)로 이동하여 다음 .NET Framework 4.5 SDK 도구 설치 프로그램 파일을 찾습니다. sdk_tools4.msi, sdk_tools4.cab
  8. 이러한 파일을 조직 내의 Windows Vista 또는 Windows 2008 Server 컴퓨터에 복사 할 수 있습니다. 이러한 파일은 Windows Vista 또는 Windows 2008 Server 컴퓨터의 동일한 디렉터리에 복사해야합니다. 참고 : 이러한 파일을 조직 외부 또는 다른 설치 프로그램의 일부로 재배포하지 마십시오.
  9. Windows Vista 또는 Windows 2008 Server 컴퓨터의 경우 여기에서 사용 조건을 검토하십시오.
  10. .NET Framework 4.5가 컴퓨터에 이미 설치되어 있는지 확인하십시오. 그렇지 않으면 www.microsoft.com에서 .NET Framework 4.5를 다운로드하여 설치하십시오.
  11. 관리자 권한으로 명령 프롬프트를 엽니 다.
  12. .NET Framework 4.5 SDK 도구 설치 프로그램 파일이 복사 된 디렉터리로 이동합니다.
  13. 명령 줄을 사용하여 .NET Framework 4.5 SDK 도구를 설치합니다. Msiexec / i sdk_tools4.msi VSEXTUI = 1


답변

Visual Studio없이 CI 서버에서 실행하려면 개발 컴퓨터에서 CI 서버의 동일한 위치로 몇 개의 폴더 만 복사하면됩니다. SDK를 설치할 필요가 없습니다.

VS 2015 :

  • C : \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v14.0 \ Web
  • C : \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v14.0 \ WebApplications

VS 2013 :

  • C : \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v12.0 \ Web
  • C : \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v12.0 \ WebApplications

VS 2012 :

  • C : \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v11.0 \ Web
  • C : \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v11.0 \ WebApplications

VS 2010 :

  • C : \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ Web
  • C : \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ WebApplications

.NET 4.6 :

  • C : \ Program Files (x86) \ Reference Assemblies \ Microsoft \ Framework \ .NETFramework \ v4.6

.NET 4.5.2 :

  • C : \ Program Files (x86) \ Reference Assemblies \ Microsoft \ Framework \ .NETFramework \ v4.5.2

.NET 4.5.1 :

  • C : \ Program Files (x86) \ Reference Assemblies \ Microsoft \ Framework \ .NETFramework \ v4.5.1

.NET 4.5 :

  • C : \ Program Files (x86) \ Reference Assemblies \ Microsoft \ Framework \ .NETFramework \ v4.5

.NET 4.0.1 :

  • C : \ Program Files (x86) \ Reference Assemblies \ Microsoft \ Framework \ .NETFramework \ v4.0.1

.NET 4.0 :

  • C : \ Program Files (x86) \ Reference Assemblies \ Microsoft \ Framework \ .NETFramework \ v4.0

또는 Matt가 제안한 대로 프로젝트의 하위 디렉터리에 복사하고 <MSBuildExtensionsPath32>MSBuild (일반적으로 .csproj또는 .vbproj) 파일 의 위치를 변경할 수 있습니다.

이 작업을 마치면 프로젝트가 컴파일됩니다.

또한 VisualStudioVersion 환경 변수를 사용중인 Visual Studio 버전 (VS2010의 경우 10.0, VS2012의 경우 11.0, VS2013의 경우 12.0, VS2015의 경우 14.0)으로 명시 적으로 설정하여 구성에서 올바르게 설정되었는지 확인해야합니다.


답변

에서 MSDN :

Windows SDK는 더 이상 완전한 명령 줄 빌드 환경과 함께 제공되지 않습니다. 컴파일러를 설치하고 환경을 별도로 구축해야합니다. 컴파일러와 빌드 환경이 포함 된 완전한 개발 환경이 필요한 경우 Windows SDK의 적절한 구성 요소가 포함 된 Visual Studio 2012 Express를 다운로드 할 수 있습니다.

이 문제를 해결하려면 C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5Visual Studio 2012가있는 개발 머신에서 빌드 에이전트로 폴더를 복사해야했습니다 . 이 작업 후 Team City는 더 이상 오류를보고하지 않았고 mscorlib.dll이 bin 폴더에 출력되지 않았습니다.


답변

다운로드 페이지에서 설명하는대로 Microsoft Build Tools 2013 은이 경우에 도움이됩니다.

컴퓨터에 Visual Studio가 설치되어 있지 않은 경우 Build Tools 2013을 사용하여 관리되는 응용 프로그램을 빌드 할 수 있습니다. Visual Basic 및 C # 컴파일러도이 다운로드에 포함되어 있습니다. (이전 버전에서는 이러한 도구가 독립 실행 형 .NET Framework에 포함되었습니다.)


답변

내 부서. Win 7 빌드 머신에 설치된 것에 최소한의 접근 방식을 취하는 것을 좋아합니다. 그러나 잠재적 인 레지스트리 키 문제로 인해 파일 / 폴더를 복사하고 붙여 넣는 것을 좋아하지 않습니다. VS 2013을 설치하는 대신 다음과 같은 훨씬 작고 무료 구성 요소를 설치했습니다. 이제 개발 팀은 VS 2013 웹 앱을 성공적으로 빌드 할 수 있습니다.


답변

Visual Studio 에이전트로이 문제를 해결합니다.

Visual Studio Agents 2012를 설치해 볼 수 있습니다.

http://www.microsoft.com/en-us/download/details.aspx?id=38186


답변