ビルド スクリプトを使用して dotless.compiler.exe を実行し、ビルド時に .less ファイルを .min.css にコンパイルしようとしています。
<?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/MsBuild/2003">
<!--
This MSBuild Script will compile all [*.less] files in the /CSS folder to their [*.min.css] counterparts.
-->
<ItemGroup>
<LessFiles Include="Styles\*.less" />
</ItemGroup>
<Target Name="CompileDotlessCss" AfterTargets="AfterBuild">
<ItemGroup>
<Binaries Include="*.dll;*.exe"/>
</ItemGroup>
<!-- Compile dotLess CSS into minified full CSS -->
<Exec Command="[MSBuild]\dotless.compiler.exe -m %(LessFiles.FullPath) $([System.String]::Copy('%(LessFiles.FullPath)').Replace('.less','.min.css'))" />
</Target>
</Project>
しかし、ビルドすると次のようになります。
The command "[MSBuild]\dotless.compiler.exe -m C:\Source Control\MyProject\MyProject.Web\Styles\main.less C:\Source Control\MyProject\MyProject.Web\Styles\main.min.css" exited with code -1.
私のプロジェクトがソース管理下にあること、または単に「ソース管理」フォルダーにファイルパスにスペースがあるという事実に関係していると思われます。
パスを引用符で囲むにはどうすればよいですか (コマンド自体が引用符で囲まれているため)。
それがソース管理要因であり、ファイルがロックされているために失敗した場合 (ファイルをチェックインしてビルドしようとしました)、どうすればこれに対処できますか? プロジェクトをソース管理下に置きたいのは明らかです。