【问题标题】:Trying to get Sass and Bundler to work cross team?试图让 Sass 和 Bundler 跨团队工作?
【发布时间】:2014-05-07 22:40:19
【问题描述】:

我创建了一个按预期工作和编译 sass 的项目。我的设置只是在 Netbeans 中使用 sass、compass 和 susy。我让另一个团队成员从源代码​​管理中提取它,但他无法编译并出现错误:

Syntax error: File to import not found or unreadable: susy.
              Load paths:
                C:/wamp/www/77864nl2014/wp-content/themes/nl (DEPRECATED)
                C:/wamp/www/77864nl2014/wp-content/themes/nl/sass
                C:/Program Files (x86)/Prepros/gems/gems/bourbon-3.1.8/app/assets/stylesheets
                C:/Program Files (x86)/Prepros/gems/gems/neat-1.4.0/app/assets/stylesheets
                C:/wamp/www/77864nl2014/wp-content/themes/nl/sass
                C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/compass-core-1.0.0.alpha.19/stylesheets
                Compass::SpriteImporter
        on line 2 of C:\wamp\www\77864nl2014\wp-content\themes\nl\sass\main.scss
  Use --trace for backtrace.

他正在使用 prepros 并在项目 sass 目录上设置了监视。他说 prepros 使用 compass 选项设置并配置为使用 ruby​​。他也已经安装了 bundler。

项目 config.rb 如下所示:

http_path = '/'
css_dir = '/wp-content/themes/nl/styles'
sass_dir = '/wp-content/themes/nl/sass'
images_dir = '/wp-content/themes/nl/images'
javascripts_dir = '/wp-content/themes/nl/scripts'

require 'bundler/setup'
require 'susy'

Gemfile 看起来像:

source 'https://rubygems.org'
gem 'sass', '3.3.4'
gem 'compass','1.0.0.alpha.19'
gem 'susy','1.0.9'

我不确定到底发生了什么,但有几件事要尝试,但希望在这里提问可以加快进程。我的办公室里有许多开发人员使用 PC 和 Mac,以及各种 IDE,我希望 bundler 可以帮助解决我们一直遇到的一些问题。我希望能够设置用于项目的特定 gem 和版本,并将其与项目的其余部分一起提交到源代码控制中。如果另一个开发人员需要在该项目上工作,我希望 bundler 会为该项目使用或拉下适当的 gem,开发人员将关闭并运行,而无需更新配置、gem 等。这就是 bundler 一旦我们可以工作的方式想出解决办法?如果没有,对于我们的情况和目标,还有其他更好的解决方案吗?

【问题讨论】:

  • 您确定您的团队成员正在运行bundle install 吗?您能否提供上述命令生成的输出?
  • 那么让我看看我是否正确理解了先决条件。他需要安装 ruby​​,安装 bundler gem,但他还需要安装 Ruby Dev Kit 并在项目目录上执行“bundler install”吗?我假设 bundler install 命令最初是用于设置项目,但该命令会拉下所需的 gems 吗?
  • 是的,bundle install 是获取必需的 gem、它们的依赖项并在本地安装它们所必需的。更多详情请点击此处:bundler.io/v1.5/bundle_install.html
  • 好的,我们完成了所有这些,并且捆绑器安装工作正常。但现在出现错误 sass/main.scss(第 2 行:要导入的文件未找到或不可读:susy。加载路径:C:/wamp/www/77864nl2014/wp-content/themes/nl/sass C:/Ruby200-x64 /lib/ruby/gems/2.0.0/gems/compass-core-1.0.0.alpha.19/stylesheets Compass::SpriteImporter)
  • 另外,如果原开发者已经这样做并创建了 config.rb 文件,是否需要新开发者运行 compass create 或 init?

标签: ruby sass bundler compass-sass


【解决方案1】:

关键是在你的“指南针手表”前面加上“bundle exec”。因此,在命令提示符下,使用项目目录中的“bundle exec compass watch”启动您的手表。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-06-08
    • 1970-01-01
    • 1970-01-01
    • 2013-01-23
    • 1970-01-01
    • 1970-01-01
    • 2021-06-11
    • 2017-02-27
    相关资源
    最近更新 更多