Как разрешить предупреждение: «Для работы этой задачи необходимо установить Ruby и Sass в PATH»?


117

Я настраиваю новый Mac для работы. Я установил Grunt & Grunt CLI глобально. Затем я сделал npm installвнутри папки проекта, чтобы установить все зависимости.

Пока проблем нет, но как только я пытаюсь запустить sass:distзадачу, получаю предупреждение:

Warning: You need to have Ruby and Sass installed and in your PATH for
this task to work. More info:
https://github.com/gruntjs/grunt-contrib-sass Use --force 
to continue.

Я понимаю, что для выполнения этой задачи мне нужно установить Ruby и Sass на более глобальном уровне. Поскольку я все еще новичок в работе с терминалом, я быстро поискал, что PATHэто - похоже, это какой-то системный путь (который можно изменить), где хранятся важные данные.

Означает ли это, что я могу просто sudo grunt install contrib-sass -gрешить проблему? А как насчет Ruby - я всегда думал, что он уже установлен в OS X?


Ответы:


205

Ладно, я понял. Мне просто нужно было установить Sass, gem install sassи теперь все в порядке ... не может быть проще.


22
sudo apt-get install ruby-compass: похоже, устанавливаются оба на Ubuntu - Ruby не был установлен в моем случае
myol

18
На моем Mac sudoраньше требовалось gem install sass.
Krzysztof Wolny

1
То же самое и для Windows
Мэтт Кэнти,

1
(Win7) Мне пришлось вручную добавить путь к корзине Ruby в PATH - только после этого сработал sass для установки gem.
Драгош Русу,


11

Вам необходимо установить Ruby и Sass как:

Для Ruby используйте команду

sudo apt-get install ruby-full

А для Sass используйте команду

sudo gem install sass

1
У меня уже был установлен Ruby, и у меня работала только команда sudo gem install sass.
Данило Кандидо

просто -> gem install sass
Данило Кандидо

6

Документация grunt-sass не очень понятна. Чтобы избежать необходимости в Ruby, вы можете попробовать следующее:

npm uninstall --save grunt-contrib-sass
npm install --save node-sass grunt-sass

Попробуйте, это работает для меня.

ссылка


4
Это лучший ответ в 2020 году. Он заставляет SASS работать как шарм и сохраняет все зависимости локально установленными через npm. При адаптации моего кода от grunt-contrib-sass к grunt-sass мне нужно было внести некоторые изменения в мою конфигурацию grunt, но их пример использования упростил задачу
Александр Райс,

Отлично, спасибо за подсказку! Искал, как избавиться от этой зависимости от Ruby, и вы ответили на него. Однако я бы использовал вместо npm install --save-devэтого, --saveпотому что вам нужен только sass для разработки (я только что отредактировал это в ответе).
Тобиас

2

Вам необходимо установить Ruby и Sass как:

Для Ruby используйте команду

sudo apt-get install ruby-full

А для Sass используйте команду

sudo gem install sass

1

Используйте grunt --force, если вы используете grunt. Если вы хотите запустить приложение с использованием grunt, появляется такое предупреждение. Чтобы игнорировать это предупреждение, вы можете использовать --force.


2
Добро пожаловать в Stack Overflow. Вы должны добавить к своему ответу еще какое-то описание. Публиковать ответы одним предложением - не лучшая практика.
filipst 09


0

Я использовал Homebrew для установки Ruby, а затем Ruby для установки SASS. Вероятно, это лучший способ сделать это, если вы уже используете Homebrew или хотите начать использовать его регулярно ...

brew install ruby
gem install sass
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.