문제

내가 만들 때 ASP.NET 웹 응용 프로그램 웹 사이트에 대한 코드가 포함된 .dll 파일을 얻었지만(훌륭합니다) 웹 사이트에는 모든 .aspx 파일과 친구도 필요하며 이러한 파일은 올바른 디렉터리 구조에 배치되어야 합니다.각 빌드의 결과로 이 모든 것을 하나의 디렉토리에 어떻게 넣을 수 있습니까?소스 디렉토리에서 올바른 파일을 선택하는 것은 고통스러운 일입니다.

최종 결과는 xcopy 배포가 가능해야 합니다.

업데이트: 나는 내가 알고 있는 게시 명령을 수동으로 사용하고 싶지 않습니다.애플리케이션에 필요한 전체 파일 세트를 빌드 출력으로 사용하고 싶습니다. 즉, 실행 중인 파일의 전체 세트도 한 곳에서 얻을 수 있습니다. MSBuild.

도움이 되었습니까?

해결책

한 가지 솔루션은 웹 프로젝트를 디렉터리에 빌드하고 선택적으로 어셈블리를 병합하고 web.config 파일을 변경할 수 있는 Visual Studio(및 msbuild)용 추가 기능인 WDP(웹 배포 프로젝트)인 것으로 보입니다.WDP를 구축하면 하나의 디렉터리에 사이트를 배포하는 데 필요한 모든 파일이 생성됩니다.

웹 배포 프로젝트에 대한 추가 정보:

  1. webdevtools MSDN 블로그에 대한 공지 WDP 2008을 위해
  2. ScottGu WDP 2005 소개

이 솔루션의 유일한 단점은 빌드 시스템에서 사용할 수 있어야 하는 추가 기능에 대한 요구 사항입니다.그래도 지금은 충분해요!

다른 팁

ASP.NET에는 없습니다. 진짜 xcopy 배포 새로운 사이트.IIS에 가상 디렉터리/응용 프로그램이 있는지에 따라 다릅니다.그러나 해당 가상 디렉터리가 생성되면 xcopy를 사용하여 업데이트할 수 있습니다.

당신은 할 수 있습니다 웹사이트 게시..배포를 자동화하려면 다음 중 일부를 사용해야 합니다. 스크립트.

.net 프레임워크 디렉터리에서 aspnet_compiler.exe를 사용해 보셨나요?웹 애플리케이션이나 웹 사이트의 "배포 준비" 버전을 만들 수 있다고 확신합니다.

MSBuild의 _CopyWebApplication 대상은 필요한 작업을 정확하게 수행합니다.문제는 주 어셈블리만 bin 폴더에 복사되므로 bin 폴더의 다른 파일도 복사하려면 복사 작업이 필요하다는 것입니다.

이 게시물의 일부로 샘플 스크립트를 게시하려고 했지만 그럴 수 없었습니다.

이것 좀 봐주세요 기사 필요한 것과 유사한 MSBuild 스크립트를 만드는 방법을 설명하는 내 블로그에 있습니다.

솔루션 탐색기에서 웹 사이트를 마우스 오른쪽 버튼으로 클릭하고 '웹 사이트 게시'를 클릭해 보셨나요?

빌드 --> 게시

프로세스를 안내하는 대화 상자가 나타납니다.

업데이트에서 설명하는 자동화된 건물에 대해서는 다음을 살펴보는 것이 좋습니다. MSBuild 그리고 CruiseControl.NET

필요한 솔루션이 얼마나 복잡한지에 따라 다릅니다. 예를 들어 스크립트와 젠킨스를 사용할 수 있습니다.IIS에 배포하기 위해 Jenkins와 함께 MSBUild를 사용할 수 있습니다.그리고 Jenkins가 있으면 나중에 다른 도구를 쉽게 연결할 수 있습니다.그러나 단지 빌드만 하고 싶다면 jenin이 MSDeploy를 사용하는 모든 빌드를 실행하는 스크립트를 사용하면 훌륭하게 작동할 것입니다.

제가 하는 방법은 다음과 같습니다. 단지 여러분에게 느낌을 주기 위해서입니다.

Sonarqube는 Gallio, Gendarme, FXcop, Stylecop, NDepths 및 PartCover를 사용하여 측정 항목을 가져오며 SonarQube는 많은 구성 없이 자동으로 이 작업을 수행하므로 이 모든 것이 매우 간단합니다.

다음은 Jenkins 마녀 빌드이며 Sonar 메트릭과 IIS에 자동으로 배포하기 위한 또 다른 작업을 가져옵니다.나는 MSBuild를 호출하고 URL, 패스 및 사용자를 호출하는 간단한 스크립트 한 줄을 사용합니다.

그리고 Sonarqube는 내 프로젝트의 모든 측정항목입니다.이것은 간단한 MVC4 앱이지만 훌륭하게 작동합니다!:

더 많은 정보를 원하시면 제가 좋은 가이드를 제공해드릴 수 있습니다.

이 전체 설정에서는 MSBuild를 사용하고 앱도 빌드하고 배포합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top