您如何在没有红宝石的情况下启动Ruby 1.9



我希望我的应用程序不是能够使用任何已安装的宝石。是否有Ruby 1.9启动参数或以编程方式执行此操作的方式?

ruby --disable-gems

是MRI(1.9)命令行参数。"它防止将GEM安装目录添加到默认负载路径中"。(Ruby编程语言,第391页)

编辑25-10-2012:Ruby Core在注释中具有与@RogerDpack相同的想法,并添加了更多的详细ruby --help参数。红宝石修订!

查看rubygems配置文件,我会尝试入侵gempathgemhome,以查看您是否可以覆盖(而不是仅附加到)默认值。

例如,如果将gempath设置为空,或者指向/dev/null,则可以防止使用系统GEM,那将是GO的方法。

正如我所看到的那样,主要优势是您的反卢比格姆构型文件可以作为启动参数传递给ruby 1.9(因此未编码),记录了大量记录并将其签到您的存储库。p>当然,所有这些都是无视Rubygems是Ruby 1.9标准库的一部分 - 因此,Ruby可能会扼杀并死亡,如果它无法访问其宝石,具体取决于Ruby的基础安装需要多少宝石功能。ymmv。

相关内容

最新更新