Come risolvere "È necessario che Ruby e Sass siano installati e nel PERCORSO affinché questa attività funzioni" Attenzione?


117

Sto configurando un nuovo Mac per il lavoro. Ho installato Grunt & Grunt CLI a livello globale. Quindi ho fatto una npm installcartella all'interno di un progetto per installare tutte le dipendenze.

Nessun problema finora, ma non appena provo a eseguire l' sass:distattività, ricevo questo avviso:

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.

Quello che capisco è che devo avere Ruby e Sass installati a un livello più globale per eseguire questa attività. Dato che sono ancora abbastanza nuovo nel lavorare con il terminale, ho fatto una rapida ricerca per scoprire cosa PATHè - sembra che sia un percorso di sistema (che può essere modificato) in cui sono memorizzati i dati importanti.

Questo significa che posso semplicemente fare una sudo grunt install contrib-sass -gper risolvere il problema? E che dire di Ruby: ho sempre pensato che fosse già installato su OS X?


Risposte:


205

Ok ho capito. Dovevo solo installare Sass usando gem install sasse ora va tutto bene ... non potrebbe essere più semplice.


22
sudo apt-get install ruby-compass: sembra installare entrambi su Ubuntu - Ruby non è stato installato nel mio caso
myol

18
Sul mio Mac sudoera richiesto prima gem install sass.
Krzysztof Wolny

1
Questo è lo stesso per Windows
Matt Canty

1
(Win7) Ho dovuto aggiungere manualmente il percorso del cestino di Ruby in PATH - solo in seguito l'installazione di gem ha funzionato.
Dragos Rusu

91

Se sei su OSX El Capitan o Yosemite su Mac, sembra che ci sia un problema durante l'installazione della gemma.

Provare

sudo gem install -n /usr/local/bin sass

La soluzione era di GitHub .


2
Funziona anche su Yosemite.
Steve K

1
Funziona bene per El Capitan!
Maxime Lafarie

11

Devi installare Ruby e Sass come:

Per Ruby usa command

sudo apt-get install ruby-full

E per Sass usa command

sudo gem install sass

1
Avevo già ruby ​​installato e solo il comando sudo gem install sass ha funzionato per me.
Danilo Cândido

just -> gem install sass
Danilo Cândido

6

La documentazione di grunt-sass non è molto chiara. Per evitare la necessità di Ruby, puoi provare questo:

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

Prova questo, per me funziona.

riferimento


4
Questa è la migliore risposta nel 2020. Fa funzionare SASS come un fascino e mantiene tutte le dipendenze installate localmente tramite npm. Quando ho adattato il mio codice da grunt-contrib-sass a grunt-sass, avevo bisogno di apportare alcune modifiche alla mia configurazione di grunt, ma il loro esempio di utilizzo lo ha reso facile: github.com/sindresorhus/grunt-sass#usage
Alexander Rice

Ottimo, grazie per il suggerimento! Stavo cercando come sbarazzarsi di quella dipendenza da Ruby e tu hai risposto. Tuttavia, lo userei piuttosto npm install --save-devinvece di --saveperché hai solo bisogno di sass per lo sviluppo (ho appena modificato questo nella risposta).
Tobias

2

Devi installare Ruby e Sass come:

Per Ruby usa command

sudo apt-get install ruby-full

E per Sass usa command

sudo gem install sass

1

Usa grugnito - forza se stai usando grugnito. Se vuoi eseguire un'applicazione usando grugnito e viene visualizzato un avviso come questo. Per ignorare questo avviso puoi usare --force.


2
Benvenuto in Stack Overflow. Dovresti aggiungere qualche altra descrizione alla tua risposta. Non è buona norma pubblicare risposte con una sola frase.
filipst

1

Anche semplicemente brew install saas/sass/sasssu Mac High Sierra (10.13.x)


0

Ho usato Homebrew per installare Ruby e poi Ruby per installare SASS. Probabilmente è solo il modo migliore per farlo se usi già Homebrew o vuoi iniziare a usarlo regolarmente ...

brew install ruby
gem install sass
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.