我有两个问题在编译Sass使用Gulp目前。首先,我在我的"/Library/Ruby/Gems“目录中设置了777权限,以释放一些权限错误。我现在每次运行Gulp时都会收到警告,声明如下:
gulp-ruby-sass: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/universal-darwin13/rbconfig.rb:213: warning: Insecure world writable dir /Library/Ruby/Gems/2.0.0 in PATH, mode 040777其次,当Gulp在我的主要SCSS文件中遇到一些"@import“声明时,Sass编译似乎停止了。也就是说,我得到以下错误:
gulp-ruby-sass: error ./screen.scss (Line 4: File to import not found or unreadable: normalize.
Load paths:
/private/var/folders/cq/_pg4s6qn59q1q5fyy5681rd00000gn/T/gulp-ruby-sass/bower_components/compass-breakpoint/stylesheets
/private/var/folders/cq/_pg4s6qn59q1q5fyy5681rd00000gn/T/gulp-ruby-sass/bower_components/susy/sass
/private/var/folders/cq/_pg4s6qn59q1q5fyy5681rd00000gn/T/gulp-ruby-sass/bower_components/normalize-scss
/private/var/folders/cq/_pg4s6qn59q1q5fyy5681rd00000gn/T/gulp-ruby-sass)这些加载路径看起来不正确.我已经通过Bower专门为这个项目安装了这些组件,所以我似乎需要告诉Gulp/NPM去查看我的项目文件夹。
任何帮助都将不胜感激!
发布于 2014-07-20 00:36:48
看起来这个问题只是我在自言自语,但我还是要和全世界分享我的发现。
原来,这是一个已知的问题,吞咽-红宝石-沙司包。请参阅:https://github.com/sindresorhus/gulp-ruby-sass/pull/80#issuecomment-49531932
在我的gulpfile中的"loadPath“选项中指定的路径与我正在处理的项目中的gulpfile的位置无关,因此它最终在不应该使用的文件夹中查找一些Bower组件,例如:
/private/var/folders/cq/_pg4s6qn59q1q5fyy5681rd00000gn/T/gulp-ruby-sass/bower_components/compass-breakpoint/stylesheets我发现,通过将 process.cwd() 先于我的每个文件路径,它们将成为相对的.。
如果您查看我在上面添加了几行的GitHub链接,您会注意到这只是一个临时的解决方法,直到这个修复被实现到gulp ruby-sass的主分支中,所以这个建议在不久的将来会变得不相关。
希望这对处于类似困惑境地的人有所帮助。
*编辑*
至于我收到的Gems权限警告,结果发现我只需要运行sudo chmod -R 775 /Library/Ruby/Gems/2.0.0来递归地更改Gems目录中的权限。
https://stackoverflow.com/questions/24845199
复制相似问题