是否有一个特殊的变量或函数,它在运行脚本时给出了use VERSION(在这种情况下5.12.0)的数量?
#!/usr/bin/env perl
use warnings;
use 5.12.0;
Run Code Online (Sandbox Code Playgroud)
我只是快速检查feature.pm代码 - 版本本身没有存储在任何地方.Alex的答案已经展示了如何测试呼叫产生的特定功能.
还要注意,use VERSION可以在几个地方调用(例如在模块中).
一个假设的选择是覆盖use并记录某个地方的版本号以供检查.
编辑:有些在钩子方向戳:
use version; # for version parsing
use subs 'require';
BEGIN {
sub require {
warn "use ",version->parse($_[0]);
# ... emulate original require
};
}
use 5.12.0;
Run Code Online (Sandbox Code Playgroud)
这个有限的示例报告了指定的版本,但是对于实际使用,它必须更加健壮.