Я добавляю задачу после сборки для запуска Ajax Minifier (ajaxMin.exe) всякий раз, когда выполняется повторная сборка проекта. Я добавил код в проект, чтобы сжать все CSS и JavaScript, но при запуске сборки на сервере сборки TFS я получаю много ошибок сборки в BuildLog.txt с сообщением:
ошибка: Microsoft Ajax Minifier
не имеет разрешения на запись в
JS [имя файла] .js
Я получаю по одному сообщению для каждого файла JavaScript и CSS, и вполне справедливо обращаю внимание на вывод сборки, никакого минимизации не произошло.
Проект находится под контролем исходного кода, но я подумал, что это задача пост-сборки, это не будет иметь значения, поскольку будет минимизировать выходные данные на сервере сборки, а не сами исходные файлы?
Код, добавленный в мой .csproj, выглядит следующим образом:
<Import Project="$(MSBuildExtensionsPath)\Microsoft\MicrosoftAjax\AjaxMin.tasks" />
<Target Name="AfterBuild" Condition=" '$(ConfigurationName)'=='Release' ">
<ItemGroup>
<JsFilesRelease Include="**\*.js" Exclude="**\*.min.js" />
<CssFilesRelease Include="**\*.css" />
</ItemGroup>
<AjaxMin JsSourceFiles="@(JsFilesRelease)" JsSourceExtensionPattern="\.js$" JsTargetExtension=".js"
CssSourceFiles="@(CssFilesRelease)" CssSourceExtensionPattern="\.css$" CssTargetExtension=".css" />
</Target>
Есть ли способ обойти это ограничение? Я хочу убедиться, что все выводимые файлы из приведенного выше сведены к минимуму, и, похоже, это только разрешения, которые этому препятствуют.
Спасибо