Development Tip

MSbuild가 빌드 서버에 Visual Studio를 설치해야합니까?

yourdevel 2021. 1. 6. 20:31
반응형

MSbuild가 빌드 서버에 Visual Studio를 설치해야합니까?


Visual Studio 2012없이 MSBuild를 사용할 수 있습니까?

현재 프로젝트 중 하나의 배포 복사본을 컴파일하고 생성하는 빌드 서버가 있으며 Visual Studio Professional Edition이 설치되어 있습니다. 이제 새 빌드 서버를 설정하고 있습니다. 새 빌드 서버에 Visual Studio 2012가 정말 필요합니까?

그렇다면 어떻게? 나는 그것을 봤지만 대답을 찾을 수 없었다.


아니요, 빌드 상자에 Visual Studio가 필요하지 않습니다. 정확하게 기억하면 msbuild는 .NET 프레임 워크의 일부로 설치됩니다. 확실히 예전에는 그렇습니다.

빌드중인 항목에 따라 Visual Studio를 설치하면 작업하기 더 쉬운 가지 가 있음을 알 수 있습니다 . 이식 가능한 클래스 라이브러리 프로필과 같은 것입니다. 일반적으로 비 VS 설치 관리자를 사용할 수 있지만 번들 빌드 대상을 얻기 위해 Visual Studio Express 버전 을 설치하는 것이 더 간단하다는 것을 알았습니다 .


우리는 빌드 서버가 Visual Studio없이 작동하도록하기 위해 많은 시간을 보냈습니다. 우리는 빌드에 TFS를 사용하지 않으므로 위의 라이선스 면제가 우리에게 적용되는지 확신 할 수 없습니다. 또한 Visual Studio가 설치되어 있지 않으면 소프트웨어가 어떻게 빌드되는지 이해하고 올바른 참조를 얻는 데 도움이됩니다.

솔루션과 함께 제공되는 Nuget 패키지의 일부와 Visual Studio가없는 컴퓨터에는없는 "프로그램 파일"경로의 위치를 ​​가리키는 다른 일부가있는 동일한 소프트웨어에 대한 참조가 포함 된 프로젝트가있는 솔루션의 많은 예를 보았습니다. 설치되었습니다. VS가 설치되지 않은 상태에서 소프트웨어를 빌드하려고 시도하면 응용 프로그램이 얼마나 "독립형"인지 알 수 있습니다.

일반적으로 설치해야하는 항목을 나열하기 전에 MS Build가 이제 더 이상 .NET 프레임 워크의 일부로 간주되지 않고 Visual Studio와 함께 제공되지만 별도로 설치할 수도 있음을 지적하겠습니다. 자세한 내용은이 블로그 게시물을 참조하십시오. http://blogs.msdn.com/b/visualstudio/archive/2013/07/24/msbuild-is-now-part-of-visual-studio.aspx

다음 소프트웨어는 대부분의 빌드에 설치해야합니다. 예를 들어 이식 가능한 클래스 라이브러리를 만드는 경우 다른 소프트웨어가있을 수 있습니다.

  1. Microsoft 빌드 도구 2013
  2. Web Deploy 3.5 (애플리케이션 패키징 용)
  3. Microsoft .NET Framework 4.5.1 개발자 팩
  4. Microsoft .NET Framework 4.5.2 개발자 팩
  5. Windows 8 용 Windows SDK (소프트웨어 개발 키트) (SDK 를 사용하여 Windows 8, Windows 7, Windows Vista, Windows Server 2012, Windows Server 2008 R2, Windows Server 2008 운영 체제를 대상으로하는 애플리케이션을 빌드 할 수 있습니다.)

다음 디렉토리를 복사해야합니다.

  1. 참조 어셈블리 (Visual Studio를 실행하는 컴퓨터에서 디렉터리 C : \ Program Files (x86) \ Reference Assemblies로 /에서 복사해야 함)
  2. 공용 어셈블리 (Visual Studio를 실행하는 컴퓨터에서 디렉터리 C : \ Program Files (x86) \ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ PublicAssemblies로 /에서 복사해야합니다.

또한 Wix를 사용하므로 다음을 설치합니다.

  1. WIX 툴셋 3.8

비슷한 테스트 세트가 있지만 질문의 일부가 아니므로 그만 두겠습니다!

이것이 누군가를 돕기를 바랍니다.

업데이트 : 2017 년 3 월 3 일

Microsoft는 최근 빌드 서버 에 Visual Studio를 설치해야한다는 요구 사항을 제거 하라는 오랜 사용자 음성 요청 " 서버에서 Visual Studio를 요구하지 않고 .NET 빌드 지원 "에 응답했습니다 .

다운로드 페이지 의 설명에서 "이러한 빌드 도구를 사용하면 Visual Studio IDE 없이도 네이티브 및 관리되는 MSBuild 기반 응용 프로그램을 빌드 할 수 있습니다." 아직 테스트되지 않았지만 RTM 이후에 여기에서 추가 업데이트를 제공 할 것입니다.

이러한 빌드 도구가 모든 필수 구성 요소를 설치하고 MS 빌드 기반 응용 프로그램을 빌드하는 데 사용할 수 있음을 약속 하는 블로그 게시물 이 있습니다.


기억 : Visual Studio 솔루션을 빌드하는 가장 쉬운 방법은 빌드 서버에 Visual Studio를 설치하는 것입니다. 심지어 비주얼 스튜디오 익스프레스는 종종 충분하다.

즉, 그것 없이도 작동하도록 만들 수 있습니다. 그러나 때로는 알아 내기 위해 많은 작업이 필요합니다. 올바른 Windows / .NET Platform SDK 를 설치해야합니다 . 이러한 SDK를 여러 개 나란히 설치할 수 있습니다. 예를 들어 A SP.NET MVC 5 또는 Entity Framework 6 에 의존하는 경우 애플리케이션을 컴파일하려면 추가 SDK를 설치해야 할 수 있습니다. 이들 모두에 대한 다운로드는 Visual Studio도 설치되어 있다고 가정하지만 많은 페이로드를 별도로 설치할 수도 있습니다. 상당히 번거로울 수 있습니다.

개인적으로 나는 어떤 설치 프로그램이 무엇을 가능하게하는지 알아내는 데 지쳤습니다. 그러나 이는 Microsoft가 MSDN 구독자 인 한 개발 컴퓨터와 동일한 라이선스로 빌드 서버 (TFS)에 Visual Studio를 설치할 수 있도록 허용한다는 사실에 의해 주도됩니다. 자세한 내용은 Visual Studio 라이선스 백서를 확인하세요 .

빌드 서버에서 Visual Studio 사용

Visual Studio Ultimate (MSDN 포함), Visual Studio Premium (MSDN 포함) 또는 Visual Studio Professional (MSDN 포함)의 라이선스 사용자가 한 명 이상있는 경우에는 Team Foundation Server 2013 Build Services의 일부로 Visual Studio 소프트웨어를 설치할 수도 있습니다. 이렇게하면 작업이 빌드를 시작하는 각 사용자에 대해 빌드 서버에서 Visual Studio를 실행하기 위해 Visual Studio 라이선스를 구매할 필요가 없습니다.

저처럼 나중에 변경하고 싶다면 Visual Studio User Voice 에서 요청을 제출하거나 기존 요청에 투표하여 의견을 듣고 있는지 확인하는 것이 좋습니다 .


여기에 간단한 설명이 있습니다.

빌드 머신은 가능한 한 개발 도구를 분리해야합니다. 여기서 다른 사람들이 이미 언급했듯이 MSBuild는 Visual Studio 독립적으로 실행할 수 있습니다 .

빌드에 Visual Studio를 실행해야하는 경우 해결해야 할 솔루션 또는 프로젝트 아키텍처 문제가있을 가능성이 매우 높습니다.


Visual Studio는 설치할 필요가 없습니다. MSBuild는 .net SDK의 일부입니다.

Other .net dependencies will need to be installed though, if you are using them. MSTest, or anything that is part of Team foundation will require Visual Studio installed.


I believe you only need MSBuild ( that is part of the .NET framework you're targeting ) .

Make sure you install the proper .NET distribution

the following is a good place for build servers it have the developer tooling.

The .NET Framework 4.5.1 Developer Pack installs the multi-targeting pack for .NET Framework 4.5.1. Developers can build applications targeting the .NET Framework 4.5.1 using either Visual Studio 2012 or third party IDEs. You need to download the web installer instead of this package if you intend to redistribute .NET Framework 4.5.1.

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

Best of luck.


C++ :

There is a "Build Tools" that contains MSBuild, Visual studio is not required.

From the official doc :

These tools allow you to build C++ libraries and applications targeting Windows desktop. They are the same tools that you find in Visual Studio 2015 in a scriptable standalone installer. Now you only need to download the tools you need to build C++ projects.

Managed :

The same applied : Build Tool Managed

ReferenceURL : https://stackoverflow.com/questions/24483589/does-msbuild-require-visual-studio-to-be-installed-on-the-build-server

반응형