Visual studio — без точек.компилятор

#asp.net #visual-studio #dotless

#asp.net #visual-studio #без точек

Вопрос:

Мне нужно из файла «.меньше» создать файл «.css» со стандартной логикой CSS перед сборкой.

Я попытался удалить dotless.compiler.exe папку и при предварительном событии сборки вызвать эту команду

 $(SolutionDir)contentfolderdotless.compiler.exe -m 
$(ProjectDir)contentcsssite.less $(ProjectDir)contentcsssite.css
 

но получите исключение « command exited with code 3 «. Где я ошибаюсь? Можете ли вы предложить другой способ?

Комментарии:

1. Вы проверили, все ли файлы и исполняемые файлы правильно установлены?

2. Я думаю, что все в порядке

3. Какой рабочий каталог в вашем случае? может быть, в этом проблема?

4. @Tigraine: у меня такая же проблема, есть идеи? $(SolutionDir)packagesdotless.1.3.0.0Toolsdotless.compiler.exe -m «$(ProjectDir)AssetsStylesDebug*.меньше» «$(ProjectDir)AssetsStylesRelease*.css»

5. Генерирует ли компилятор какие-либо выходные данные в файлах site.css? Потому что для меня синтаксис выглядит нормально.. вы могли бы попробовать опустить параметр выходного файла, чтобы компилятор использовал встроенный по умолчанию файл site.css, но в остальном это выглядит нормально.. Вы делаете что-нибудь необычное с импортом, который может прерваться из-за проблем с рабочим каталогом?

Ответ №1:

Я нашел два распространенных случая, когда я получал этот код ошибки при использовании компилятора без точек в событии предварительной сборки. Во-первых, если файлы css уже существуют в системе управления версиями и заблокированы. Второй — когда в путях к файлам .less или .css существует пробел (или специальный символ).

Это можно исправить, удалив файл css перед запуском компиляции и заключив все пути к файлам в кавычки:

 del "$(ProjectDir)contentcsssite.css"
"$(SolutionDir)contentfolderdotless.compiler.exe" -m "$(ProjectDir)contentcsssite.less" "$(ProjectDir)contentcsssite.css"
 

Ответ №2:

Я также получал ошибку -3. Моя проблема заключалась в том, что мои файлы находились под управлением исходного кода и были заблокированы, поэтому компилятор не мог перезаписать файл css. Итак, ваша проблема также может заключаться в том, что ваш css-файл, который необходимо перезаписать, заблокирован.

Ответ №3:

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

Я также использовал squishit, который генерирует css во время выполнения, в отличие от сборки / компиляции.

Ответ №4:

У меня была такая же проблема в Windows 8.1 и VS 2013. Ни одно из предложенных решений мне не помогло.

Затем я запускаю компилятор без точек явно в CMD от имени администратора, и это сработало!