如何在不先安装Ruby GEM的情况下开发它?

5
我正在开发一个我fork的GEM,并尝试为我的应用程序稍作修改。
由于每次更改都需要执行以下步骤,因此我发现这很困难且耗时:
1. 卸载 2. 构建 3. 重新安装 4. 运行应用程序
有没有更简单的方法可以避免重复上述所有步骤?

你是想用你的宝石版本运行一个应用程序吗? - Ismael
我的意思是,我的应用程序如何在不需要先安装那个 gem 的情况下运行和使用我刚刚更新的 GEM。我能否更新应用程序的 GEM 文件,直接从我可以指定的目录中使用该 gem,而不是默认的 GEM 目录? - Roman
2个回答

6

如何在使用bundler的应用中使用它

如果您想将其用于测试或使用应用程序,可以在Gemfile中指定它的路径甚至是Git存储库 http://gembundler.com/gemfile.html

像这样:

gem "mygem", :path => "~/code/gems/mygem"

将其作为独立的gem使用。例如:像rspec或rake那样在应用程序之外运行。

只需在运行gem命令时指定您的gem二进制文件路径,如:

$ ~/path_to_my_gem/bin/mygem some args

如果您能在您的宝石目录内执行(即:该命令不会在当前目录创建文件,也不需要任何特定文件来自当前目录),那么只需执行以下操作:

$ ./bin/mygem some args

请注意,最后一条只是为了以后参考,我认为它在此上下文中不适用。

如果GEM包含可执行脚本,类似于您可以在终端中执行“bundle install”,那么这是否有效? - Roman
是的。那么这个 gem 是独立工作还是需要在 Rails 应用程序或其他什么东西中使用? - Ismael
我需要在我的GEM文件中包含你建议的那行代码吗? - Roman
nop,那行代码只是用来运行二进制文件的。你不需要做任何更改。 - Ismael
如果你只想运行二进制文件,我认为你不需要更改任何Gemfile。 - Ismael
显示剩余7条评论

0

使用 require_relative 来包含你的文件:

require_relative 'yourgem/yourclass'

这是函数文档


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接