2013-12-19 54 views
1

这两个命令似乎产生几乎同样的事情Rails插件捆绑VS宝石

rails plugin new __name__ 
bundle gem __name__ 

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

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

感谢

回答

1

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

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

如果你开发的Rails的宝石,需要这样的测试,rails plugin会更好。否则bundle或宝石生成宝石jeweller

+0

但是你通常总是需要一个测试模块否? –

+0

一些宝石只需要单元测试,并不总是需要假人。 –

+0

啊,好的,我接受了。谢谢。 –

0

插件赞成宝石或多或少弃用在最近版本的Rails。

0

据我所知,运行rails plugin my_gem只需在您的rails应用程序的根目录下创建一个'my_gem'目录。

与运行bundle gem my_gem没什么不同,只是它除掉了几个测试文件,并运行bundle install。

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

不过,如果你这样做,它会出现在你的rails项目的根目录下。你可以随时移动它,但如果你要运行捆绑宝石,你可以在任何你想要的地方进行。

+0

是的,但根据doc rails插件新用于创建gem:http://guides.rubyonrails.org/plugins.html –

+0

@xdotcommer,而不是阅读和引用其他人,你需要阅读原始文档并弄脏你的手。 –

+0

感谢您的建议。我正在处理关于情况的知识 - 我对gemified插件不熟悉 - 所以我认为这会比说lmgtfy更好,因为其他帖子看起来符合我的理解。 – xdotcommer