Ошибка MSBuild при выполнении целевого объекта WebDirectoryCreate - PullRequest
1 голос
/ 12 октября 2011

Я пытаюсь использовать задачу WebDirectoryCreate из MSBuildCommunityTasks , чтобы создать мой виртуальный каталог с MSBuild, но он выдает ошибку Index was out of range.

Вот соответствующая частьМой сценарий сборки:

  <Import Project="$(MSBuildExtensionsPath)\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets"/>

  ...other build targets working ok...

  <Target Name="Deploy">
    <RemoveDir Directories="$(DeploymentFolder)$(VerRevision)" ContinueOnError="true" />
    <ItemGroup>
      <DeploymentFiles Include="$(PublishOutputFolder)\**\*.*" />
    </ItemGroup>
    <Copy SourceFiles="@(DeploymentFiles)" DestinationFolder="$(DeploymentFolder)$(VerRevision)\%(RecursiveDir)" />
    <WebDirectoryDelete VirtualDirectoryName="$(VirtualDirectory)$(VerRevision)" ContinueOnError="true" />
    <WebDirectoryCreate VirtualDirectoryName="$(VirtualDirectory)$(VerRevision)" VirtualDirectoryPhysicalPath="$(DeploymentFolder)$(VerRevision)" />
  </Target>

И вот соответствующий вывод:

  Deleting virtual directory 'MyApp283' on 'localhost:80'.
MSBUILD : warning : The system cannot find the path specified. (Exception from HRESULT: 0x80070003) [D:\build\MyApp\Build.xml]
  The previous error was converted to a warning because the task was called with ContinueOnError=true.
  Build continuing because "ContinueOnError" on the task "WebDirectoryDelete" is set to "true".
  Creating virtual directory named MyApp283 on localhost:
D:\build\MyApp\Build.xml(50,5): error : Index was out of range. Must be non-negative and less than the size of the collection.
D:\build\MyApp\Build.xml(50,5): error : Parameter name: index
Done Building Project "D:\build\MyApp\Build.xml" (default targets) -- FAILED.

Build FAILED.

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

Я выполняю сборку с использованием MSBuild из простого пакетного файла.Все задачи до этого выполняются просто отлично.ОС Windows Server 2008 R2 Enterprise Edition с пакетом обновления 1 (SP1).

Кто-нибудь может дать мне какие-нибудь подсказки?ТАК и Google выкинул одну единственную ссылку без ответа.

...