【发布时间】:2015-10-31 01:55:45
【问题描述】:
我在一个 cgi 脚本中有以下代码,它只是将 xml 文件捆绑到一个 zip 中以供下载:
my $obj = Archive::Zip->new();
foreach my $xml_file (glob(File::Spec->catfile($in_path,"*.xml")))
{
$obj->addFile($xml_file);
}
$obj->writeToFileNamed($zipfile_name);
这在单元测试上运行良好,当我在 Linux 上运行它时,但在 Windows 上安装时,我得到:
Can't call method "desiredCompressionLevel" on an undefined value at /usr/share/perl5/Archive/Zip/Archive.pm line 249.
在这两种情况下,它在 Linux 和单元测试下都可以正常工作,但在 windows 上安装时会失败(目录中有 xml 文件应该被拾取...)。
【问题讨论】:
-
Windows路径有空格吗?
-
@ikegami,你是对的。运行该测试时,我一次更改了两件事。 if 定义没有区别