2015-03-25 57 views
1

add_runtime_dependency,add_dependencyadd_development_dependency有关的人员是“宝石规格”,我试图理解他们。他们如何工作以及如何区分他们。如何通过gemspec添加依赖到gemfile.lock?

当我使用add_development_dependency时,我无法观察到任何不同的东西。当我使用add_dependency以及add_runtime_dependency时,观察到相同的效果。

它被添加到gemfile.lock作为我的宝石的唯一依赖,但不是项目依赖。我希望将它作为项目依赖项添加,因为我认为将冗余作为我的宝石的一个单元添加,并且将项目依赖项添加到Gemfile中。

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

"could not find file 'jquery'".

+0

你的Gemfile是什么样的? – 2015-03-26 03:26:16

+0

@AntarrByrd 我的Gemfile不包含jquery-rails。这甚至不包括在内。我想通过add_runtime_dependency将jquery-rails包含在gemfile.lock中。 – rplaurindo 2015-03-26 06:54:07

回答

0

你不应该手动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 

任何不属于特定群组的东西都会包含在所有环境中。

+0

但添加到Gemfile并通过捆绑命令安装它就是我不想要的。我想jquery是从另一个gem安装的。得到它? – rplaurindo 2015-04-01 13:00:15

+0

@RafaelLaurindo这是什么宝石?它的Gemfile中有jquery吗? – 2015-04-01 15:24:16

+0

个人的宝石。我尝试通过这个我的个人宝石添加jquery-rails与“add_runtime_dependency”。理解? – rplaurindo 2015-04-01 21:01:28