当前位置 : 主页 > 编程语言 > ruby >

ruby-on-rails – 在Ruby on Rails中,安装gem或插件之间的区别是什么?

来源:互联网 收集:自由互联 发布时间:2021-06-23
在 http://github.com/collectiveidea/delayed_job 它说: To install as a gem, add the following to config/environment.rb: config.gem 'delayed_job' Run rake gems:install 与 To install as a plugin: script/plugin install git://github.com/co
在 http://github.com/collectiveidea/delayed_job

它说:

To install as a gem, add the following to config/environment.rb:
config.gem 'delayed_job'
Run rake gems:install

To install as a plugin:
script/plugin install git://github.com/collectiveidea/delayed_job.git

将它安装为gem还是作为插件有什么区别?

另外,第一种方法只是安装gem 2.0.3,这可能是tobi的版本? (rake gems:install按gem list -r delayed_job安装版本)是http://github.com/tobi/delayed_job吗?
“插件”方法明确表示它是集体版本?你安装哪一个不重要吗?

Gem和vendored插件都指的是collectiveidea的分叉.事实上,collectiveidea是RubyGems上delayed_job Gem的当前维护者.

也就是说,一般来说,将插件安装为Gem有许多优点.

>您可以安装一次并在许多不同的项目中使用它
>您可以利用依赖项解析
>您只需升级版本号即可升级
>您无需将整个插件代码存储在SCM中

那么,为什么你可以“插件”安装一个插件?
有许多不同的答案.

一开始,Rails插件就像简单的库一样.时间过去了,开发人员开始注意到将插件打包为Gem的优势.

此外,在Rails 3之前,一些插件功能仅保留给插件而不保留给Gems.例如,在Rails 3之前,插件可以捆绑rake任务,而没有办法将新的rake任务或新路由注入主应用程序.

在过去两年中,Rails插件的大部分内容都提供了作为插件或Gem安装的能力.随着Rails 3和Bundler的到来,我确信插件将被弃用以支持Gems.

网友评论