【问题标题】:How to add dependency to gemfile.lock through gemspec?如何通过gemspec添加对gemfile.lock的依赖?
【发布时间】:2015-03-25 10:36:08
【问题描述】:

add_runtime_dependencyadd_dependencyadd_development_dependency“Gem 规范”相关的人员,我正在努力理解它们。它们是如何工作的以及如何区分它们。

当我使用add_development_dependency 时,我无法观察到任何不同。当我使用add_dependencyadd_runtime_dependency 时,观察到了相同的效果。

它被添加到 gemfile.lock 作为我的 gem 的唯一依赖项,但不是项目依赖项。而且我希望将其添加为项目依赖项,因为我认为添加冗余作为我的 gem 的一个单元,以及项目的依赖项,将其添加到 Gemfile。

我不明白的是,如果我将jquery作为我的gem的一个单元添加,但不直接在应用程序Gemfile中添加,它是找不到的。我收到以下错误。

"could not find file 'jquery'".

【问题讨论】:

  • 你的 Gemfile 是什么样的?
  • @AntarrByrd 我的 Gemfile 不包含 jquery-rails。它甚至不包括在内。我希望 jquery-rails 通过 add_runtime_dependency 包含在 gemfile.lock 中。

标签: ruby-on-rails gem gemfile.lock


【解决方案1】:

你不应该手动 gemfile.lock 。您应该在 Gemfile 中包含 jquery-rails 并进行捆绑安装。 gemfile.lock 由 bundler 管理。如果您仅在给定环境中需要依赖项,则可以执行类似的操作。

group :development do
  gem 'better_errors'
  gem 'bullet'
  gem 'lol_dba'
  gem 'meta_request'
  gem 'pry-rails'
  gem 'rbeautify'
  gem 'rsense'
  gem 'rubocop'
  gem 'spring'
  gem 'ruby-growl'
end

group :development, :test do
  gem 'binding_of_caller'
  gem 'jazz_hands'
end

任何不属于特定组的内容都将包含在所有环境中。

【讨论】:

  • 但是添加到 Gemfile 并通过 bundle 命令安装它正是我不想要的。我希望 jquery 是从另一个 gem 安装的。明白了吗?
  • @RafaelLaurindo 那是什么宝石?它的 Gemfile 中有 jquery 吗?
  • 个人珍宝。我尝试使用“add_runtime_dependency”通过我的个人 gem 添加 jquery-rails。明白了吗?
  • 还有,我想不出修改 Gemfile.lock 的有效案例
  • 这意味着,不幸的是,通过另一个安装gem,只有如何将它添加为gemfile.lock中的依赖项,对吧?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多