Визуальная студия - dotless.compiler
Мне нужно из файла ".less" создать файл ".css" со стандартной логикой CSS перед сборкой.
Я пытался бросить dotless.compiler.exe
в папке и в событии Pre-Build вызовите эту команду
$(SolutionDir)content\folder\dotless.compiler.exe -m
$(ProjectDir)content\css\site.less $(ProjectDir)content\css\site.css
но получите исключениеcommand exited with code 3
". Где я ошибаюсь? Можете предложить другой способ?
4 ответа
Я нашел два распространенных случая, когда я получал этот код ошибки при использовании компилятора без точек в событии предварительной сборки. Первый - если CSS-файлы уже существуют в системе контроля версий и заблокированы. Второй - когда в путях к файлам.less или.css существуют пробелы (или специальные символы)
Это можно исправить, удалив файл css перед запуском компиляции и поместив все пути к файлам в кавычки:
del "$(ProjectDir)content\css\site.css"
"$(SolutionDir)content\folder\dotless.compiler.exe" -m "$(ProjectDir)content\css\site.less" "$(ProjectDir)content\css\site.css"
Я также получил ошибку -3. Моя проблема заключалась в том, что мои файлы находились под контролем исходного кода и были заблокированы, поэтому компилятор не мог перезаписать файл CSS. Таким образом, ваша проблема также может быть в том, что ваш CSS-файл, который нужно перезаписать, заблокирован.
У меня была такая же проблема на Windows 8.1 и VS 2013. Ни одно из предложенных решений не помогло мне.
Затем я запускаю компилятор без точек на CMD как администратор, и это работает!