【发布时间】:2017-01-24 05:58:30
【问题描述】:
现在我正在尝试生成 XML 并从 Perl 打印出来。我发现了这个模块,XML::Write,它看起来相当不错。但是当我想尝试它时,我遇到了一些相当奇怪的错误......
我的测试脚本是这样的
#!/usr/local/bin/perl -w
use strict;
use strict 'refs';
use XML::Writer;
my $writer = XML::Writer->new(OUTPUT => 'self');
$writer->xmlDecl("ISO-8859-1");
$writer->startTag("foo");
$writer->endTag("foo");
$writer->end;
print $writer->to_string;
当我运行它时,唯一的输出是
无法在 /usr/lib/perl5/site_perl/5.8.8/XML/Writer.pm 第 132 行通过包“self”找到对象方法“print”(也许您忘记加载“self”?)。
我错过了什么?我是否必须安装一些额外的模块才能使 perl 的 OO 部分可用?既然我有一个相当旧的 Perl 版本,我应该以某种方式安装旧版本的 XML::Write 吗?
任何帮助将不胜感激!
【问题讨论】:
-
你运行的是什么版本? (
perl -MXML::Writer -e'print "$XML::Writer::VERSION\n"') -
你是如何执行程序的?
-
好吧,当我尝试执行它时,它工作正常。也许你需要重新安装模块
-
在这里也可以工作(perl 5.14.2, XML-Writer 0.623 on ubuntu 12.04)
-
我正在运行 Perl 版本 5.8.8 和 perl -MXML::Writer -e'print "$XML::Writer::VERSION\n"' 返回 0.612
标签: perl