2013-04-11 128 views
0

我收到一个错误,指南针正确观察我的目录,但无法生成我的输出。我认为它与我的GEMFILEcompass.rb配置文件有关。Bundler配置编译sass文件

ERROR: Guard::Compass failed to achieve its <run_on_change>, exception was: 
Compass::Error: Nothing to compile. If you're trying to start a new project, you have left off the directory argument. 

Guardfile

# More info at 
# https://github.com/guard/guard#readme 
# https://github.com/guard/guard/wiki/Guardfile-examples 

# Launch Guard like this: [bundle exec] guard -g ui 

group :ui do 

# guard :bundler, 
# :hide_success => true do 
# watch('Gemfile') 
# end 

    guard 'compass', 
    :output => 'client/css', 
    :workdir => 'source/sass', 
    :configuration_file => 'config/compass.rb', 
    :hide_success => true do 
    #watch('source/sass/(.*)\.scss') 
    watch(/source\/sass\/(.*)\.s[ac]ss/) 

    end 

end 

而且我compass.rb文件

require 'sass' 
require 'compass' 

# Require any additional compass plugins here. 

# Get the directory that this configuration file exists in 
dir_src = File.dirname(__FILE__) 

# Set this to the root of your project when deployed: 
http_path = "/" 
project_path = File.join(dir_src, "../", "") 

sass_dir = "source/sass" 
sass_path = sass_dir 

css_dir = "client/css" 
#css_path = File.join(dir_src, "client", "css") 

#images_dir = "img" 
#images_path = File.join(dir_src, "../public", "img") 

#javascripts_dir = "js" 
#javascripts_path = File.join(dir_src, "../public", "js") 

#Environment 
#environment = :development 

# You can select your preferred output style here (can be overridden via the command line): 
# output_style = :expanded or :nested or :compact or :compressed 
output_style = :expanded 

# To enable relative paths to assets via compass helper functions. Uncomment: 
relative_assets = true 

# To disable debugging comments that display the original location of your selectors. Uncomment: 
line_comments = false 

# If you prefer the indented syntax, you might want to regenerate this 
# project again passing --syntax sass, or you can uncomment this: 
#preferred_syntax = :sass 

# and then run: 
# sass-convert -R --from scss --to sass sass scss && rm -rf sass && mv scss sass 
debug_info = false 

我的文件夹结构是与我的顶级目录如下。

project/ 
    client/ 
    css 
    source/ 
    sass/ 

不确定为什么指南针无法编译?

编辑:

FILE STRUCTURE

回答

0

sass_path应该是一个绝对路径。在你的配置中,它是相对的。

试着评论一下,你已经有sass_dir

如果这没有帮助,请分享您的项目目录结构。

+0

更新并添加了我的文件夹结构,我评论说sass_path定义,我仍然收到相同的错误。 – Warz 2013-04-11 15:53:18

+0

通过直接观看我的客户端路径来解决问题。 – Warz 2013-04-13 23:04:44

+0

我从问一个关于流星和sass的单​​独问题中发现的答案。 http://stackoverflow.com/questions/15912907/meteor-js-scss-compass。关于删除sass_path和使用相对路径的答案有所帮助。我会考虑这个答案 – Warz 2013-04-14 19:59:11