Задача сборки AjaxMin для минимизации всех js в отдельную папку

Я использую ajaxmin для минимизации всех моих файлов JS. Все работает отлично, но у меня есть небольшие проблемы с тем, как генерируются выходные файлы.

В настоящее время происходит то, что JS-файлы минимизируются рядом с его путем. Например, если исходный путь включает в себя / js / test.js, то он минимизируется в include / js / test.min.js.

Я хочу, чтобы все мои js-файлы минифицировались в другом месте, чем в исходном. Например, все мои js-файлы находятся в каталоге include /js/JSFILESHERE, и я хотел, чтобы эти js-файлы были уменьшены в include / minifiedjs / MINIFIEDJSFILESHERE.

Я использую приведенный ниже код.

    <Import Project="$(MSBuildExtensionsPath)\Microsoft\MicrosoftAjax\AjaxMin.tasks" />
    <Target Name="AfterBuild">
        <ItemGroup>
            <JS Include="\js\*.js" Exclude="**\*.min.js;" />
        </ItemGroup>  
    <AjaxMin JsSourceFiles="@(JS)" JsSourceExtensionPattern="\js\.js$" JsTargetExtension=".min.js"/>
    </Target>

Пожалуйста помоги.

1 ответ

Извиняюсь за ответ, немного опоздал на этот вопрос.

Вот решение, которое я использовал для своего проекта -

<Target Name="AfterBuild">
<PropertyGroup>
  <DestinationPath>$(MSBuildProjectDirectory)\build-publish</DestinationPath>
</PropertyGroup>
<ItemGroup>
  <JS Include="Scripts\app\**\*.js" Exclude="**\*.min.js;Scripts\*.js" />
</ItemGroup>
<Copy SourceFiles="@(JS)" DestinationFiles="@(JS -> '$(DestinationPath)\%(RecursiveDir)%(Filename).src%(Extension)')" Condition="'%(Extension)'=='.js'">
  <Output ItemName="JavaScriptFiles" TaskParameter="DestinationFiles" />
</Copy>
<AjaxMin JsSourceFiles="@(JavaScriptFiles)" JsSourceExtensionPattern="\.src.js$" JsTargetExtension="min.js" SourceMapType="V3">
</AjaxMin>

Здесь я сначала копирую файлы в целевую папку (рекурсивно), а затем применяю к ним Minification. Мне нужны были исходные файлы карт, поэтому я сохранил свои исходные файлы, но если вам не нужны исходные карты, вы можете удалить исходные файлы после завершения минификации.

Другие вопросы по тегам