当我将use v5.8;
放在我的脚本顶部时,这意味着除非Perl 5.8或更高版本解释它,否则脚本不会运行。我的问题是,是否有办法强制Perl在"兼容模式下运行"对于特定版本?因此,如果我使用像use only::v5.8;
这样的(虚构)行,如果使用Perl 5.8中没有的语言功能,我的脚本将无法运行。
我的用例是,我希望能够使用我的个人笔记本电脑为我的工作机器(具有更旧的Perl版本)开发脚本,该笔记本电脑具有更新的笔记本电脑。
答案 0 :(得分:4)
CPAN上有Perl::MinimumVersion和Perl::MinimumVersion::Fast。
对于前者,还有command line tool。
使用这些模块,您可以检查您的程序是否需要更新的perl版本。可悲的是格式化有点。
perlver yourfile.pl
-----------------------------------------
| file | explicit | syntax | external |
| ----------------------------------------- |
| logfile.pl | v5.10.0 | v5.6.0 | n/a |
| ----------------------------------------- |
| Minimum explicit version : v5.10.0 |
| Minimum syntax version : v5.6.0 |
| Minimum version of perl : v5.10.0 |
-----------------------------------------