본문 바로가기
Programming/visual studio

MSBuild.exe를 사용해 솔루션에서 특정프로젝트 빌드하기!!!

by 악마근육남 2020. 5. 11.
반응형

안녕하세요 악마근육남입니다.

C, C++, C# (ms visualstudio 툴을 사용하는) 기반의 솔루션(Solution)을 개발한다고 했을 때 웬만해서는 하나의 프로젝트(Project)만으로 원하는 모든 기능을 구현할 수 없습니다.

그래서 하나의 솔루션에 다양한 프로젝트들이 포함되어 있는것이 일반적인 구조입니다.

이러한 구조일 경우 솔루션(Solution)을 빌드하게 되면 솔루션 파일에 정의된 순서대로 내부의 프로젝트드들이 빌드되게 됩니다. 하지만 필요에 따라서 개발자는 전체 솔루션중에서 하나의 프로젝트만 빌드해 테스트해보고 싶은 경우가 있을 수 있습니다.

당연히 솔루션이 프로젝트드들의 합으로 구성되어 있기 때문에 모듈화 장점을 활용할 수 있습니다. 

이렇게 솔루션안에 포함되어 있는 특정 프로젝트를 빌드하기 위해선 두 가지 방법이 있습니다.

1. VisualStudio를 실행해 솔루션에 포함되어 있는 프로젝트만 우클릭하여 빌드!

2. MSBbuild.exe를 통형 CMD 명령어로 해당 프로젝트만 빌드하는 방법입니다.

그럼 두 번째 방법에 대해서 조금 더 자세하게 설명해 보도록 하겠습니다.

명령어로 원하는 작업을 실행하 수 있는 다는것은 엄청난 장점입니다. 그건 바로 자동화가 파이프라인을 만들고 자동화 시키는 것이 가능하기 때문입니다.

빌드 명령어를 실행시킬 수 있는 MSBuild.exe 는 VisualStudio를 설치하면 기본적으로 PC에 설치되게 됩니다.

MSBuild.exe를 사용한 명령어를 살펴보도록 하겠습니다.

msbuild.exe   솔루션.sln   -target:프로젝트명:Rebuild;

기본적인 골자가 되는 명령구문입니다. "target" 파라미터 뒤에 빌드할때 사용하는 옵션을 계속해서 이어 붙일 수 있습니다.

더욱 자세한 설명은 MS공시사이트에 명시되어 있습니다.

여기서 제가 좀 해맨 부분이 있었는데요. 바로 솔루션안에 다시 폴더를 구성하고 폴더안에 프로젝트드들이 있을 경우 였습니다. 

결론은 프로젝트명에 폴더이름까지 적어주면 정상적으로 빌드가 되게 됩니다. 

ex) -target:folder\프로젝트명:Rebuild

ㅠㅠ 이거 몰라서 한참 돌아갔네요... 그래도 다시 최대한 통빌드 자동화를 진행해 보도록 하겠습니다.

www.docs.microsoft.com/ko-kr/visualstudio/msbuild/how-to-build-specific-targets-in-solutions-by-using-msbuild-exe?view=vs-2019

 

MSBuild.exe를 사용하여 솔루션의 특정 대상 빌드 - Visual Studio

방법: MSBuild.exe를 사용하여 솔루션의 특정 대상 빌드How to: Build specific targets in solutions by using MSBuild.exe 이 문서의 내용 --> MSBuild.exe를 사용하여 솔루션에서 특정 프로젝트의 특정 대상을 빌드할 수 있습니다.You can use MSBuild.exe to build specific targets of specific projects in a solution. 솔루션에서

docs.microsoft.com

 

반응형