Sass: errno:: enoent: нет такого файла или каталога
Я знаю, что это ужасно мягкая ошибка, но я сталкиваюсь с обычной ошибкой "файл не найден" в Sass 3.4.2:
/*
Errno::ENOENT: No such file or directory - dumdum.scss
Backtrace:
/Library/Ruby/Gems/2.0.0/gems/sass-3.4.12/lib/sass/plugin/compiler.rb:482:in `read'
/Library/Ruby/Gems/2.0.0/gems/sass-3.4.12/lib/sass/plugin/compiler.rb:482:in `update_stylesheet'
/Library/Ruby/Gems/2.0.0/gems/sass-3.4.12/lib/sass/plugin/compiler.rb:215:in `block in update_stylesheets'
/Library/Ruby/Gems/2.0.0/gems/sass-3.4.12/lib/sass/plugin/compiler.rb:209:in `each'
/Library/Ruby/Gems/2.0.0/gems/sass-3.4.12/lib/sass/plugin/compiler.rb:209:in `update_stylesheets'
/Library/Ruby/Gems/2.0.0/gems/sass-3.4.12/lib/sass/plugin/compiler.rb:293:in `watch'
/Library/Ruby/Gems/2.0.0/gems/sass-3.4.12/lib/sass/plugin.rb:108:in `method_missing'
/Library/Ruby/Gems/2.0.0/gems/sass-3.4.12/lib/sass/exec/sass_scss.rb:381:in `watch_or_update'
/Library/Ruby/Gems/2.0.0/gems/sass-3.4.12/lib/sass/exec/sass_scss.rb:51:in `process_result'
/Library/Ruby/Gems/2.0.0/gems/sass-3.4.12/lib/sass/exec/base.rb:52:in `parse'
/Library/Ruby/Gems/2.0.0/gems/sass-3.4.12/lib/sass/exec/base.rb:19:in `parse!'
/Library/Ruby/Gems/2.0.0/gems/sass-3.4.12/bin/sass:13:in `<top (required)>'
/usr/bin/sass:23:in `load'
/usr/bin/sass:23:in `<main>'
*/
Я сталкивался с этим раньше, но мне не повезло в диагностике/решении. Он также отображается как странный элемент на странице, с которой он связан.
может кто-нибудь помочь мне понять трассировку? Я уверен, что это что-то невероятно простое, но я очень мало знаю Руби. Я попытался удалить / переустановить Sass.
3 ответов
я столкнулся с аналогичной ошибкой в моем проекте, удалив каталог Sass-cache в корне моего проекта, а затем запустите Sass/grunt снова решил проблему для меня...
rm .sass-cache/ -R
Hop это помогает
будь то Ruby или Rails (тоже), ваш backtrace означает, что ошибка возникает из самого кода драгоценного камня. Если бы вы открыли эти файлы и проследили за обратным ходом, вы могли бы увидеть, как работает драгоценный камень sass.
редактировать: если вы вручную un/installed a gem, лучше всего запустить bundle install
таким образом, вы правильно соответствуете спецификациям в вашем Gemfile.lock
. Если такой файл кажется вам новым, я настоятельно рекомендую прочитать http://bundler.io/, менеджер самоцвета позволяя вам контролируйте, какие драгоценные камни / версии необходимы для вашего приложения!
Примечание: если вы работаете с рельсами, остальная часть моего ответа ниже может помочь. (Исходя из личного опыта, который у меня был пару месяцев назад.)
эта ошибка означает, что у вас нет файла dumdum.scss
в каталоге, скорее всего,app/assets/stylesheets/
. Я предлагаю сделать быстрый grep
поиск, где вы используете dumdum
. Например, в приложении, над которым я работаю, у меня есть файл _colors.scss
, и на него ссылаются в и переопределяет таблицу стилей (для bootstrap) как @import "colors";
.
У меня была аналогичная проблема, но я не мог решить ее с вышеупомянутыми решениями, но мне пришлось использовать подход hack and hope.
вещи, которые я пробовал перед моим Хак и надеюсь подход:
- Я удалил все .Sass-папки кэша, которые могут содержать мой файл sass
- Я удалил и переустановил драгоценный камень sass.
- я обновил Ruby и Sass. По какой-то причине я не могу удалить командную строку ruby чисто. Поэтому я все еще использую ruby 2.3.3p222 и Sass версии 3.4.23
мой решение использовать sassmeister для преобразования scss и это решило мою проблему. Для сжатия css-файла я использовал CSS компрессор. Этот метод эффективен, если у вас нет чистой установки установки ruby/sass.
- Далее возьмите сжатый файл css и сохраните новый файл CSS с новым имя файла.
- затем перейдите к своим html / php-файлам и измените имя файла CSS на новое имя CSS с шага 1 в вашем.
- это должно сделать трюк. У меня получилось.