代码之家  ›  专栏  ›  技术社区  ›  Tom Andersen

如何(或者我可以)在寻找一个bug的时候临时破解一个gem?

  •  3
  • Tom Andersen  · 技术社区  · 14 年前

    我在家里的笔记本电脑上安装了一个gem(如非服务器)。我已经安装了Ruby1.9.1和其他一些gem,特别是右_Aws,它允许使用Ruby访问S3等。

    除了在simpleDB上进行查询时有一个bug外,所有的工作都正常,并且返回的项列表包含一个项,其itemname()中有任何两个字节的utf-8字符。

    因此,我查看了安装在我的机器上的正确的\aws gem的源代码,我可以看到一些我想要测试修复的地方。如果我编辑文件,保存更改(需要密码),然后重新启动服务器(脚本/服务器),它将忽略我的更改。

    我在Ruby是个新手——你需要“编译”或其他类似的动作才能使源代码更改生效吗?

    我可以看到编辑后的文件在终端等处被修改。

    2 回复  |  直到 14 年前
        1
  •  3
  •   Ceilingfish    14 年前

    您确定要编辑应用程序正在获取的版本吗?如果你使用bundler,它会把它下载到一个单独的文件夹(隐藏在你的主目录中)。如果不检查,请使用 gem which right_aws . 确保正在编辑的文件与该文件报告的文件相同。

        2
  •  1
  •   glebm    14 年前

    作为插件安装。然后,您可以在供应商/插件中更改源代码,并在修复后返回gem版本。