用指南针安装bootstrap sass

时间:2014-03-11 10:27:55

标签: ruby twitter-bootstrap rubygems sass bundler

我正在尝试安装bootstrap-sass并收到以下错误。我已经尝试了旧版本的sass,但是bundler一直在安装3.3.0。

WARN: Unresolved specs during Gem::Specification.reset:
sass (~> 3.2)
WARN: Clearing out unresolved specs.
Please report a bug if this causes problems.
/Library/Ruby/Gems/2.0.0/gems/compass-0.12.2/lib/compass/sass_extensions/monkey_patches/browser_support.rb:1:in require': cannot load such file -- sass/script/node (LoadError)
from /Library/Ruby/Gems/2.0.0/gems/compass-0.12.2/lib/compass/sass_extensions/monkey_patches/browser_support.rb:1:in'
from /Library/Ruby/Gems/2.0.0/gems/compass-0.12.2/lib/compass/sass_extensions/monkey_patches.rb:2:in require'
from /Library/Ruby/Gems/2.0.0/gems/compass-0.12.2/lib/compass/sass_extensions/monkey_patches.rb:2:inblock in '
from /Library/Ruby/Gems/2.0.0/gems/compass-0.12.2/lib/compass/sass_extensions/monkey_patches.rb:1:in each'
from /Library/Ruby/Gems/2.0.0/gems/compass-0.12.2/lib/compass/sass_extensions/monkey_patches.rb:1:in'
from /Library/Ruby/Gems/2.0.0/gems/compass-0.12.2/lib/compass/sass_extensions.rb:9:in require'
from /Library/Ruby/Gems/2.0.0/gems/compass-0.12.2/lib/compass/sass_extensions.rb:9:in'
from /Library/Ruby/Gems/2.0.0/gems/compass-0.12.2/lib/compass.rb:5:in require'
from /Library/Ruby/Gems/2.0.0/gems/compass-0.12.2/lib/compass.rb:5:inblock in '
from /Library/Ruby/Gems/2.0.0/gems/compass-0.12.2/lib/compass.rb:4:in each'
from /Library/Ruby/Gems/2.0.0/gems/compass-0.12.2/lib/compass.rb:4:in'
from /Library/Ruby/Gems/2.0.0/gems/compass-0.12.2/bin/compass:20:in require'
from /Library/Ruby/Gems/2.0.0/gems/compass-0.12.2/bin/compass:20:inblock in '
from /Library/Ruby/Gems/2.0.0/gems/compass-0.12.2/bin/compass:8:in fallback_load_path'
from /Library/Ruby/Gems/2.0.0/gems/compass-0.12.2/bin/compass:19:in'
from /usr/bin/compass:23:in load'
from /usr/bin/compass:23:in'

我的Ruby版本 - ruby 2.0.0p247(2013-06-27修订版41674)[universal.x86_64-darwin13]

我的Gemfile

source "https://rubygems.org"

gemspec

platform :rbx do
  gem 'rubysl', '~> 2.0'
  gem 'json', '>= 1.8.1'
  gem 'rubysl-test-unit', '~> 2.0'
  gem 'racc'
end

我的Gemspec

lib = File.expand_path('../lib', __FILE__)
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
require 'bootstrap-sass/version'

Gem::Specification.new do |s|
  s.name     = "bootstrap-sass"
  s.version  = Bootstrap::VERSION
  s.authors  = ["Thomas McDonald"]
  s.email    = 'tom@conceptcoding.co.uk'
  s.summary  = "Twitter's Bootstrap, converted to Sass and ready to drop into Rails or Compass"
  s.homepage = "https://github.com/twbs/bootstrap-sass"
  s.license  = 'MIT'

  s.add_development_dependency 'compass'
  s.add_development_dependency 'term-ansicolor'
  s.add_development_dependency 'sass-rails', '>= 3.2'
  s.add_runtime_dependency 'sass', '~> 3.3.0'

  s.add_development_dependency 'capybara'
  s.add_development_dependency 'poltergeist'
  s.add_development_dependency 'tzinfo'
  s.add_development_dependency 'jquery-rails'
  s.add_development_dependency 'slim-rails'
  s.add_development_dependency 'uglifier'

  s.files      = `git ls-files`.split("\n")
  s.test_files = `git ls-files -- test/*`.split("\n")
end

3 个答案:

答案 0 :(得分:5)

如果您确实签出了bootstrap-sass代码,请在.gemspec中更改此行:

s.add_runtime_dependency 'sass', '~> 3.3.0'

s.add_runtime_dependency 'sass', '~> 3.2.0'

在此之后,运行bundle update sass,然后bundle clean --force。降级sass gem时的问题是罗盘仍然试图加载新的宝石,这就是为什么你需要干净的(或者如果它更适合你你可以做gem uninstall)。

答案 1 :(得分:5)

安装宝石

gem install bootstrap-sass

如果您有现有的Compass项目:

# config.rb:
require 'bootstrap-sass'

bundle exec compass install bootstrap

如果要创建新的Compass项目,可以使用bootstrap-sass支持生成它:

bundle exec compass create my-new-project -r bootstrap-sass --using bootstrap

这将创建一个新的Compass项目,其中包含以下文件:

  • _variables.scss - 所有引导变量(在此处覆盖它们)。
  • styles.scss - 主项目SCSS文件,导入变量和bootstrap。

某些bootstrap-sass mixins可能会与Compass相冲突。如果发生这种情况,请更改导入顺序,以便稍后加载Compass mixins。

答案 2 :(得分:0)

我建议yeoman(bower/grunt)来管理您的客户端库。它不仅会下载带有comapss的引导程序并安装它,它还可以让文件更改时自动更新并自动重新编译sass,并使用生活重新加载重新加载浏览器。它带有grunt,你可以设置缩小js,css和压缩svg,png等。