标量找到了运算符在<script>处预期的位置

joe*_*joe 2 perl moose

use Moose;

extends 'TEST::Role';

has 'name' => (
    is => 'ro',
    isa => 'Str',
    default => 'me',
);
Run Code Online (Sandbox Code Playgroud)

这适用于perl 5.8.5但不适用于5.8.8.

怎么解决?

String found where operator expected at B.PM line 4, near "extends 'TEST::Role'"
        (Do you need to predeclare extends?)
Run Code Online (Sandbox Code Playgroud)

per*_*rin 5

如果你可以把它变成一个失败的测试并将它发布到Moose邮件列表,或者发送到irc.perl.org上的#moose,我相信有人可以帮助理清正在发生的事情.

请确保包含所有代码,此处缺少您的包声明(作为第一个提示,我不会将我的包B命名为因为它与核心包冲突).