从ruby中的require / load失败中恢复
发布时间:2020-12-17 03:26:02 所属栏目:百科 来源:网络整理
导读:我最近发现了 Hanna RDoc template,我比默认更喜欢它.我想在我的项目中使用它,但我也不希望我的项目需要它. 为了让hanna模板工作,我必须对Rakefile做出的唯一改变就是改变 require 'rake/rdoctask' 至 require 'hanna/rdoctask' 有没有办法尝试一个require,
我最近发现了
Hanna RDoc template,我比默认更喜欢它.我想在我的项目中使用它,但我也不希望我的项目需要它.
为了让hanna模板工作,我必须对Rakefile做出的唯一改变就是改变 require 'rake/rdoctask' 至 require 'hanna/rdoctask' 有没有办法尝试一个require,并从错误中捕获/恢复?我注意到load并且需要在irb中返回一个布尔值,所以我想也许我可以这样做: unless require 'hanna/rdoctask' require 'rake/rdoctask' end 可悲的是,一旦要求失败,耙子就会中止.然后我尝试了: 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 在我的机器上运行,运行带有“rake”gem的Ruby 1.8.7p248,但不是“hanna”gem.你确定你的环境中需要rubygems吗?如果没有,要求’rake / rdoctask’也可能失败. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |