gpt4 book ai didi

ruby - 从 ruby​​ 中的 require/load 失败中恢复

转载 作者:数据小太阳 更新时间:2023-10-29 07:14:54 25 4
gpt4 key购买 nike

我最近发现了 Hanna RDoc template而且我比默认的更喜欢它。我想在我的项目中使用它,但我也不希望我的项目需要它。

为了让 hanna 模板工作,我必须对我的 Rakefile 进行的唯一更改是更改

require 'rake/rdoctask'

require 'hanna/rdoctask'

有什么方法可以尝试请求并从错误中捕获/恢复吗?我注意到加载并要求在 irb 中返回一个 bool 值,所以我想也许我可以这样做:

unless require 'hanna/rdoctask'
require 'rake/rdoctask'
end

可悲的是,一旦请求失败,rake 就中止了。然后我尝试了:

begin
require 'hanna/rdoctask'
rescue
require 'rake/rdoctask'
end

但这也不起作用。

有什么方法可以完成我在这里尝试的事情吗?

最佳答案

您的最后一个选项应该有效。

require 'rubygems'
begin
require 'hanna/rdoctask'
rescue LoadError
puts 'Hanna rdoc unavailable, falling back to rake'
require 'rake/rdoctask'
end

在我的机器上运行,运行 Ruby 1.8.7p248,安装了“rake”gem,但没有安装“hanna”gem。不过,您确定您的环境中需要 ruby​​gems 吗?否则,要求 'rake/rdoctask' 也可能会失败。

关于ruby - 从 ruby​​ 中的 require/load 失败中恢复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2164125/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com