Я пытаюсь использовать задачу 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 выкинул одну единственную ссылку без ответа.