2010-04-15 43 views
4

如何设置gem以获得二进制命令,例如“项目newProject”使用Thor的一组生成器命令来创建文件等。在雷宝石中使用Thor作为发电机

一个很好的答案将描述如何布置一个gem的框架,当它从命令行运行时,即“project newProject”,在它运行的目录中创建一个名为“newProject.txt”的文件。

我已经看到Rails 3正在使用Thor来为其发电机供电;似乎是一个非常好的解决方案,我想在我正在开发的非Rails ruby​​ Gem中使用类似的方法。试图看看Rails 3源,但它有点迷宫,因此是一个问题。

+0

只是要清楚我不是在寻找关于如何制作宝石盒的信息 - 我特别想让Rails3像使用雷神的发生器 – 2010-04-16 13:56:17

回答

5

在你的宝石项目中,你需要包含一个“bin”文件夹。这个文件夹需要包含你的生成器的ruby脚本,没有文件扩展名。如果您使用珠宝商之类的东西,它会在打包过程中自动扫描bin文件夹。当安装gem时,gem系统会将bin文件夹中的文件放入ruby安装中,以便您可以像运行一样运行它们。

bin文件只是普通的老红宝石脚本,没什么特别的。

5

不知道你是否找到你的解决方案,但有a Railscast episode关于如何使用Thor生成使用Thor的生成器,这应该有所帮助。还有通过Platformatec的this tutorial

我意识到你不想让Rails生成器,但他们工作背后的基本思想很好解释,我认为这将帮助你走上正确的轨道。