如何捕获“使用mypackage”的例外?

时间:2016-02-01 22:35:18

标签: julia

是否可以try using一个包?

try
    using A
catch e
    showerror(STDOUT, e)
end

unsupported or misplaced expression using

我希望看到像

这样的错误消息
using A
LoadError: ArgumentError: A not found in path

1 个答案:

答案 0 :(得分:1)

using仅允许在顶级范围内使用。解决方法可以是eval(:(using A))而不是using A,然后try - catch按预期工作。

区别在于使用eval来评估顶层范围内的表达式参数。

julia> try
           eval(:(using A))
       catch e
           showerror(STDOUT, e)
       end
ArgumentError: A not found in path