我在 Ubuntu Oneiric 上安装了 Compass 0.12(一个 ruby gem),没有任何问题,我已经更新为精确格式化 / 并保留 /home,所以我需要重新安装 ruby(1.9.3)。
现在,当我编译 SCSS 文件时,出现此错误:
compass watch --trace
Change detected at 12:45:09 to: style.scss overwrite css/style.css
Dear developers making use of FSSM in your projects, FSSM is essentially dead at this point. Further development will be taking place in the new shared guard/listen project. Please let us know if you need help transitioning! ^_^b - Travis Tilley
>>> Compass is polling for changes. Press Ctrl-C to Stop.
ArgumentError on line ["46"] of /usr/lib/ruby/1.9.1/pathname.rb: invalid byte sequence in US-ASCII
/usr/lib/ruby/1.9.1/pathname.rb:46:in `chop_basename'
/usr/lib/ruby/1.9.1/pathname.rb:102:in `cleanpath_aggressive'
/usr/lib/ruby/1.9.1/pathname.rb:90:in `cleanpath'
/usr/lib/ruby/1.9.1/pathname.rb:452:in `relative_path_from'
/var/lib/gems/1.9.1/gems/fssm-0.2.9/lib/fssm/path.rb:82:in `split_path'
/var/lib/gems/1.9.1/gems/fssm-0.2.9/lib/fssm/path.rb:70:in `run_callback'
/var/lib/gems/1.9.1/gems/fssm-0.2.9/lib/fssm/path.rb:56:in `callback_action'
/var/lib/gems/1.9.1/gems/fssm-0.2.9/lib/fssm/path.rb:36:in `update'
/var/lib/gems/1.9.1/gems/fssm-0.2.9/lib/fssm/state/directory.rb:39:in `block in modified'
/var/lib/gems/1.9.1/gems/fssm-0.2.9/lib/fssm/state/directory.rb:37:in `each'
/var/lib/gems/1.9.1/gems/fssm-0.2.9/lib/fssm/state/directory.rb:37:in `modified'
/var/lib/gems/1.9.1/gems/fssm-0.2.9/lib/fssm/state/directory.rb:18:in `refresh'
/var/lib/gems/1.9.1/gems/fssm-0.2.9/lib/fssm/backends/polling.rb:17:in `block (2 levels) in run'
/var/lib/gems/1.9.1/gems/fssm-0.2.9/lib/fssm/backends/polling.rb:17:in `each'
/var/lib/gems/1.9.1/gems/fssm-0.2.9/lib/fssm/backends/polling.rb:17:in `block in run'
/var/lib/gems/1.9.1/gems/fssm-0.2.9/lib/fssm/backends/polling.rb:15:in `loop'
/var/lib/gems/1.9.1/gems/fssm-0.2.9/lib/fssm/backends/polling.rb:15:in `run'
/var/lib/gems/1.9.1/gems/fssm-0.2.9/lib/fssm/monitor.rb:26:in `run'
/var/lib/gems/1.9.1/gems/fssm-0.2.9/lib/fssm.rb:70:in `monitor'
/var/lib/gems/1.9.1/gems/compass-0.12.1/lib/compass/commands/watch_project.rb:89:in `perform'
/var/lib/gems/1.9.1/gems/compass-0.12.1/lib/compass/commands/base.rb:18:in `execute'
/var/lib/gems/1.9.1/gems/compass-0.12.1/lib/compass/commands/project_base.rb:19:in `execute'
/var/lib/gems/1.9.1/gems/compass-0.12.1/lib/compass/exec/sub_command_ui.rb:43:in `perform!'
/var/lib/gems/1.9.1/gems/compass-0.12.1/lib/compass/exec/sub_command_ui.rb:15:in `run!'
/var/lib/gems/1.9.1/gems/compass-0.12.1/bin/compass:29:in `block in <top (required)>'
/var/lib/gems/1.9.1/gems/compass-0.12.1/bin/compass:43:in `call'
/var/lib/gems/1.9.1/gems/compass-0.12.1/bin/compass:43:in `<top (required)>'
/usr/local/bin/compass:19:in `load'
/usr/local/bin/compass:19:in `<main>'
(“亲爱的开发人员”消息是输出的一部分)。
第一次更改 scss 文件时不会出现此错误,而是第二次出现。
此外,指南针会“吃掉”某些文件中的一个“s”,并且不会将它们编译为“style.css”(它应该来自文件名),而是编译为“tyle.css”。
我花了 3 个小时在这里查看类似的问题,但无法解决。我尝试在一些文件的顶部包含#encoding: utf-8,但没有成功。
请逐步解释我应该做什么,因为我是 Ruby 的菜鸟(我只是因为 SASS 而使用它)。
我认为路径名有问题,可能包含无效的非 ASCII 序列;可能被吃掉的“s”是问题所在,也许它是一个无效的字符,或者可能是一个接近它的字符;尝试确保路径是 ASCII。
或者可能是精确 readline 包中的错误?尝试通过RVM安装ruby 1.9.3,RVM应该使用与其捆绑的readline(详细信息请参阅下面的评论)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)