[MSBuild] MSBuild 를 이용한 Package 시 XML 파일 포함 시키는 법

728x90
반응형

확장자 csproj 파일을 열어보면 XML로 구성되어 있다.

 

이중 <PropertyGroup> 에 해당 하는 부분에 패키지시 포함할 파일들을 포함시킬 수 있다. 

 

<CopyAllFilesToSingleFolderForPackageDependsOn>
   CustomCollectFiles;
   $(CopyAllFilesToSingleFolderForPackageDependsOn);
</CopyAllFilesToSingleFolderForPackageDependsOn>

<CopyAllFilesToSingleFolderForMsdeployDependsOn>
   CustomCollectFiles;
   $(CopyAllFilesToSingleFolderForMsdeployDependsOn);
</CopyAllFilesToSingleFolderForMsdeployDependsOn>

 

 

<Target Name="CustomCollectFiles" BeforeTargets="CopyAllFilesToSingleFolderForMsdeploy">
<Message Text="CustomCollectFiles" Importance="high"/>
<ItemGroup>
	<_CustomFiles Include="bin\\*.xml" />
	<FilesForPackagingFromProject Include="%(_CustomFiles.Identity)">
	    <DestinationRelativePath>bin\\%(RecursiveDir)%(Filename)%(Extension)</DestinationRelativePath>
	</FilesForPackagingFromProject>
</ItemGroup>
</Target>

※ 경로에 해당하는 \\ 이스케이프 문자는 실제 적용시 한개만 입력하면됩니다. 구글 Search Console 문제로 이스케이프 문자를 하나 더 기입하였습니다.

 

 

csproj 프로젝트 파일에 해당 내용을 기입한 후 MSbuild 를 이용하면,

xml 파일들을 패키징 할 수 있다. 

 

<MSBuild Projects="$(ProjectFile)" ContinueOnError="false" Targets="Package" roperties="Configuration=$(Configuration)" >

 

 

 

 

참고 자료

https://stackoverflow.com/questions/23681534/asp-net-webapi-publish-xml-files-not-copy

 

asp.net webapi publish - xml files not copy

I have MVC 4.0 WebApi project with auto generated help based on this. My model classes are stored it another projects in my solution. Generation of xml file is enabled for every project (Project

stackoverflow.com

 

728x90

'CI' 카테고리의 다른 글

[Jenkins] 젠킨스 MSBuild 셋팅  (0) 2019.12.10
[MSBuild] XML 을 이용한 Build  (0) 2019.12.10
[MSBuild] MSBuild를 이용한 프로젝트 빌드  (0) 2019.12.09
[Jenkins] 젠킨스 Windows 설치  (0) 2018.10.11
[Jenkins] 젠킨스의 개요  (0) 2018.09.14