这个 Perl 模块有什么问题?

发布于 2024-12-17 06:36:19 字数 594 浏览 2 评论 0原文

我正在制作一个非常非常简单的模块(这是我写的第一个模块):

package Master::Math;
use 5.12.4;
use strict;
use warnings;

require Exporter;

our @ISA = qw(Exporter)

our %EXPORT_TAGS = ( 
    'all' => [ qw(
        max



=cut

1; # End of Master::Math

当我在程序中运行 use this 时,我收到错误

C:/Perl/lib/Master/Math.pm 第 3 行的版本格式无效(非数字数据), 靠近“包 Master::Math

” C:/Perl/lib/Master/Math.pm 第 3 行的语法错误,靠近“package Master::Math

需要出口商” C:\MainDev\myperl\max.pl 第 3 行的 require 编译失败。 BEGIN 失败 - 编译在 C:\MainDev\myperl\max.pl 第 3 行中止。

我需要什么来解决这个问题?谢谢!

I am making a very, very simple module (it is the first I've ever wrote):

package Master::Math;
use 5.12.4;
use strict;
use warnings;

require Exporter;

our @ISA = qw(Exporter)

our %EXPORT_TAGS = ( 
    'all' => [ qw(
        max



=cut

1; # End of Master::Math

When I run use this in my program, I get the error

Invalid version format (non-numeric data) at C:/Perl/lib/Master/Math.pm line 3,
near "package Master::Math

"
syntax error at C:/Perl/lib/Master/Math.pm line 3, near "package Master::Math

require Exporter"
Compilation failed in require at C:\MainDev\myperl\max.pl line 3.
BEGIN failed--compilation aborted at C:\MainDev\myperl\max.pl line 3.

What do I need to fix this? Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

欢烬 2024-12-24 06:36:19

您在 @ISA 声明中缺少分号。

sub max 中,$foo 未声明;使用foreach my $foo ...

这应该可以编译。我还没有看过更多的内容。

(顺便说一句,我没有遇到与您相同的错误。我使用了 perl 5.14.0,perl -cw master-math.pm。)

You're missing a semicolon on the declaration of @ISA.

In sub max, $foo is undeclared; use foreach my $foo ....

That should get it to compile. I haven't looked beyond that.

(BTW, I didn't get the same errors you did. I used perl 5.14.0, perl -cw master-math.pm.)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文