MSBuild

MSBuild
MSBuild
MSBuild logo.png
개발자마이크로소프트
초기 릴리즈2003; 19년(2003)
안정적 해제
v17.0.0 / 2021년 11월 2일; 4개월(2021-11-02)[1]
리포지토리
기록 위치C#
운영 체제크로스 플랫폼
플랫폼.NET Framework, .NET 코어
유형빌드 도구
면허증MIT 라이선스
웹사이트docs.microsoft.com/visualstudio/msbuild/msbuild Edit this on Wikidata

MSBuild로 더 잘 알려진 Microsoft Build Engine네이티브 C++ 코드뿐만 아니라 관리 코드용 무료 오픈 소스 빌드세트로서 의 일부였습니다.[2][3]NET Framework.Visual Studio는 MSBuild에 의존하지만 그 반대는 아니다.[4]Visual Studio Application Lifecycle Management는 MSBuild에 의존하여 Azure DevOps Server를 통해 팀 빌드를 수행한다.[4]

개요

MSBuild는 소프트웨어 제품 생성 프로세스를 자동화하는 빌드 도구로, 소스 코드 컴파일, 포장, 테스트, 배포, 문서 작성 등을 포함한다.MSBuild로 Visual Studio IDE를 설치하지 않아도 Visual Studio 프로젝트 및 솔루션 구축이 가능하다.MSBuild는 무료 오픈소스다.[5]MSBuild는 이전에 와 함께 번들로 제공되었다.그러나 NET Framework;[6] Visual Studio 2013부터, 대신 Visual Studio와 함께 번들로 제공된다.MSBuild는 기존 Visual Studio 릴리즈에서 시작된 프로젝트에서 여전히 사용되고 있는 nmake 유틸리티의 대체 기능이다.

MSBuild는 Apache Ant 또는 NAntXML 구문이 유사한 MSBuild 프로젝트 파일에 작용한다.구문이 잘 정의된 XML 스키마에 기초하더라도 기본 구조와 연산은 기존의 유닉스 make 유틸리티와 비교가 된다: 사용자는 사용할 것(일반적으로 소스 코드 파일)과 그 결과(일반적으로 정적 라이브러리, DLL 또는 실행 가능한 애플리케이션)를 명시하지만 유틸리티 자체는 wha를 결정한다.T to do와 빌드 수행 순서.

MSBuild는 지원되는 에 대해 프로젝트를 구축할 수 있다.NET Framework 버전 선택.이 특징은 "멀티타겟팅"이라고 불린다.그러나 주어진 프로젝트 빌드는 한 번에 하나의 프레임워크 버전만 대상으로 할 수 있다.[7]

역사

MSBuild는 2003년에 처음 만들어졌다.NET Framework 2.0은 Visual Studio 2005(코드명 휘드비)[8]Windows Vista(코드명 롱혼)에서 사용할 수 있다.[9][10]

버전

버전 .NET Framework Visual Studio 버전 일반 설치 위치(x86)[11]
2.0 2.0 2005 C:\Windows\Microsoft.NET\Framework\v2.0.50727
3.5 3.5 2008 C:\Windows\Microsoft.NET\프레임워크\v3.5
4.7.3062.0 4.0 2010 C:\Windows\Microsoft.NET\Framework\v4.0.30319
4.8.3761.0 4.5.2 2012 C:\Windows\Microsoft.NET\Framework\v4.0.30319
12.0[6] 4.5.2 2013 C:\프로그램 파일(x86)\MSBuild\12.0\Bin
14.0 4.6 2015 C:\프로그램 파일(x86)\MSBuild\14.0\Bin
15.0[12] 4.7 2017
  • C:\Program Files (x86)\Microsoft Visual Studio\2017\Build도구\MSBuild\15.0\Bin
  • C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin
  • C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin
16.0[13] 4.7.2 2019
  • C:\Program Files (x86)\Microsoft Visual Studio\2019\Build도구\MSBuild\Current\Bin
  • C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin
  • C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin
17.0 2022
  • C:\Program Files\Microsoft Visual Studio\2022\Build도구\MSBuild\Current\Bin
  • C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin
  • C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin

용어.

대상
대상은 MSBuild가 실행할 태스크 세트를 포함한다.MSBuild의 초점은 프로젝트 파일로 MSBuild를 호출할 때 지정된 Target이다.이는 프로젝트가 여러 개의 대상 항목을 포함할 수 있기 때문이며, 각 항목은 순차적으로(그리고 조건부로) 실행된다.후속 종속 대상들은 요청된 대상보다 먼저 실행된다.현재 대상의 실행 흐름은 다음 속성을 사용하여 지시할 수 있다.조건, BeforeTargets, AfterTargets 및 DependsOnTargets.각 대상은 스스로 완료하는 데 필요한 업무를 스스로 포함시킬 수 있다.대상은 일반적으로 파일, 파일 또는 디렉터리 집합에서 실행되는 작업이다.
과제
태스크는 대상을 완료하기 위해 실행되는 명령이다.태스크는 빌드 프로세스 중에 원하는 수의 작업을 그룹화하고 실행하는 데 사용된다.그것들은 일반적으로 에 구현된다.작업 클래스로부터 상속받거나 ITask 인터페이스를 구현하는 클래스로서의 NET 조립체.많은 기본 작업이 의 일부로 배송된다.NET Framework,[14] 그리고 커뮤니티가 개발한 과제들을 자유롭게 이용할 수 있다.태스크의 몇 가지 예로는 파일 복사, 디렉터리 생성 또는 XML 구문 분석 등이 있다.
속성 및 항목
MSBuild는 개념적으로 make의 매크로와 동등한 PropertiesItems를 제공한다.속성은 정적 값을 지정하지만, 일반적으로 항목은 태스크를 수행할 파일 또는 폴더 집합을 정의하는 데 사용된다.항목에 파일을 지정하는 것은 와일드카드의 지원으로 쉽게 할 수 있다.

참고 항목

참조

  1. ^ "Latest release". Microsoft/msbuild. GitHub. Microsoft. Retrieved 2022-02-15.
  2. ^ "microsoft/msbuild: The Microsoft Build Engine (MSBuild) is the build platform for .NET and Visual Studio". GitHub. Microsoft. Retrieved 2019-07-23.
  3. ^ Hashimi, Sayed Ibrahim; Bartholomew, William (2009). Inside the Microsoft Build Engine: Using MSBuild and Team Foundation Build. Microsoft Press. p. 406. ISBN 978-0-7356-2628-7.
  4. ^ a b "MSBuild". MSBuild. Microsoft Docs. Retrieved 2019-07-23.
  5. ^ Lander, Rich (18 March 2015). "MSBuild Engine is now Open Source on GitHub". .NET Blog. MSDN Blogs. Microsoft. Retrieved 2019-07-23.
  6. ^ a b "What's new in MSBuild 12.0". MSBuild. Microsoft Docs. Retrieved 2019-07-23.
  7. ^ "MSBuild multitargeting overview". MSBuild. Microsoft Docs. Retrieved 2019-07-23.
  8. ^ "Building, Testing, and Deployment". What's New in Visual Studio 2005. MSDN. Microsoft. Archived from the original on 2014-08-26.
  9. ^ Sneath, Tim (July 19, 2004). "MSBuild: The New Build System for Visual Studio 2005 and Longhorn". Tim Sneath. MSDN Blogs. Retrieved 2018-04-22.
  10. ^ England, Chuck (February 25, 2010). "Getting Started with MSBuild". The Visual Studio Blog. MSDN Blogs. Retrieved 2018-04-22.
  11. ^ "Standard and custom Toolset configurations". MSBuild. Microsoft Docs. Retrieved 2019-07-23.
  12. ^ "What's new in MSBuild 15". MSBuild. Microsoft Docs. Retrieved 2019-07-23.
  13. ^ "What's new in MSBuild 16.0". MSBuild. Microsoft Docs. Retrieved 2019-07-23.
  14. ^ "MSBuild task reference". MSBuild. Microsoft Docs. Retrieved 2019-07-23.

추가 읽기

외부 링크