Msbuild компилировать сайт без размещения сайта в IIS - PullRequest
0 голосов
/ 18 февраля 2011

Я пытаюсь создать скрипт msbuild, который скомпилирует и поместит тестовое приложение в папку на моем рабочем столе. Я не хочу, чтобы это приложение было опубликовано в IIS. Я проследил несколько блогов и просмотрел книгу Хашими, но до сих пор не могу понять это. Ниже мой сценарий. Большое спасибо!

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Target Name="Clean">
    <ItemGroup>
      <BinFiles Include="bin\*.*" />

    </ItemGroup>
    <Delete Files="@(BinFiles)" />
  </Target>
  <Target Name="Compile" DependsOnTargets="Clean">
  <MSBuild Projects="test.vbproj"/>
  </Target>
  <Target Name="Publish" DependsOnTargets="Compile">
  <RemoveDir Directories="$(OutputFolder)" 
  ContinueOnError="true"/>
  <MSBuild Projects="test.vbproj"
            targets="ResolveReferences;_CopyWebApplication"
            Properties="WebProjectOutputdir=$(OutputFolder; OutDir=$WebProjectOutputDir)\"/>
            </Target>
    </Target>
</Project>

1 Ответ

0 голосов
/ 19 февраля 2011

Ваш скрипт немного неловкий (вы переопределили чистую цель, чтобы сделать то же самое, что и базовая чистая цель).

Я почти уверен, что ваша проблема исходит от CopyWebApplication, которая делает много вещей в соответствии со свойствами, установленными в вашем файле проекта, и передается из командной строки.

Можете ли вы попробовать следующий скрипт:

<Project DefaultTargets="Compile" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Target Name="Compile">
    <MSBuild 
      Projects="test.vbproj"
      Targets="Clean;Build"
      Properties="OutputPath=C:\tmp"/>    
  </Target>
</Project>

если ваш тестовый проект является веб-сайтом, то цель сборки должна создать его в папке, указанной в свойстве OutputPath / OutDir

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...