rails plugin vs bundle gem

时间:2013-12-19 19:30:22

标签: ruby-on-rails gem

这两个命令似乎产生了几乎相同的东西

rails plugin new __name__ 
bundle gem __name__

有一个我没注意到的隐藏细节?

你使用哪一个,基本上,为什么?

由于

3 个答案:

答案 0 :(得分:1)

他们都可以生成一个准系统宝石,但它们是不同的。

rails plugin new可以在test内生成一个虚拟应用,以及一个基本的test_helper,如果你想在gem中添加一些功能/集成测试,这将非常方便。你也可以修改一下使用Rspec。 bundle gem不会这样做。

如果您为Rails开发gem并需要进行此类测试,那么rails plugin会更好。否则bundle或宝石生成宝石jeweller

答案 1 :(得分:0)

在最新版本的Rails中,插件或多或少地被弃用以支持宝石。

答案 2 :(得分:0)

据我所知,运行rails plugin my_gem只会在rails应用的根目录中创建一个'my_gem'目录。

与运行bundle gem my_gem并没有太大区别,只是它会存储几个测试文件,并运行bundle install。

如果您正在创建一个在rails上运行的gem,那么这可能很有用 - 您需要一个“rails环境”(请参阅​​test / dummy / app目录)。

但是,如果你这样做,看起来gem被添加到rails项目的根目录中。你可以随时移动它,但如果你要运行bundle gem,你可以随时随地进行移植。