Ubuntu 中 Catalyst 框架中出现编译错误

发布于 2024-10-12 14:42:04 字数 1929 浏览 11 评论 0原文

我正在 Catalyst 框架上构建一个应用程序,但我完全是新手。昨天我安装了 SQLite,从那时起我收到了如下错误消息:

mohit@mohit-Studio-1555:~$ catalyst.pl
Undefined subroutine &Catalyst::Exception::Base::with called at /usr/share/perl5/Catalyst/Exception.pm line 50.
Compilation failed in require at /usr/share/perl5/Catalyst/Utils.pm line 4.
BEGIN failed--compilation aborted at /usr/share/perl5/Catalyst/Utils.pm line 4.
Compilation failed in require at /usr/share/perl5/Catalyst/Helper.pm line 12.
BEGIN failed--compilation aborted at /usr/share/perl5/Catalyst/Helper.pm line 12.
Compilation failed in require at /usr/bin/catalyst.pl line 26.
BEGIN failed--compilation aborted at /usr/bin/catalyst.pl line 26.

我尝试重新安装、清理并尝试用 google 搜索它但无法解决。

请帮帮我。可能是什么问题?


升级 namespace::clean 后出现此错误:

The old Moose::Util::MetaRole API (before version 0.94) has been deprecated at /usr/share/perl5/Catalyst/Exception/Basic.pm line 3
Catalyst::Exception::Basic::BEGIN() called at /usr/lib/perl5/MooseX/Role/WithOverloading.pm line 3
eval {...} called at /usr/lib/perl5/MooseX/Role/WithOverloading.pm line 3
require Catalyst/Exception/Basic.pm called at /usr/local/lib/perl/5.10.1/Class/MOP.pm line 114
Class::MOP::__ANON__() called at /usr/local/share/perl/5.10.1/Try/Tiny.pm line 71
eval {...} called at /usr/local/share/perl/5.10.1/Try/Tiny.pm line 67
Try::Tiny::try('CODE(0x8f366b8)', 'Try::Tiny::Catch=REF(0x8e6b9c8)') called at /usr/local/lib/perl/5.10.1/Class/MOP.pm line 125
Class::MOP::load_first_existing_class('Catalyst::Exception::Basic') called at /usr/local/lib/perl/5.10.1/Class/MOP.pm line 137
Class::MOP::load_class('Catalyst::Exception::Basic', undef) called at /usr/local/lib/perl/5.10.1/Moose/Util.pm line 113
Moose::Util::_apply_all_roles('Moose::Meta::Class=HASH(0x8f36458)', undef, 'Catalyst::Exception::Basic') called at /usr/local/lib/perl/5.10.1/Moose/Util.pm line 91

I am building an application on Catalyst framework and I am a complete novice at it. Yesterday I installed SQLite and since then I am getting error messages like:

mohit@mohit-Studio-1555:~$ catalyst.pl
Undefined subroutine &Catalyst::Exception::Base::with called at /usr/share/perl5/Catalyst/Exception.pm line 50.
Compilation failed in require at /usr/share/perl5/Catalyst/Utils.pm line 4.
BEGIN failed--compilation aborted at /usr/share/perl5/Catalyst/Utils.pm line 4.
Compilation failed in require at /usr/share/perl5/Catalyst/Helper.pm line 12.
BEGIN failed--compilation aborted at /usr/share/perl5/Catalyst/Helper.pm line 12.
Compilation failed in require at /usr/bin/catalyst.pl line 26.
BEGIN failed--compilation aborted at /usr/bin/catalyst.pl line 26.

I tried reinstalling, cleaning and tried to google it but unable to resolve.

Please help me out. What can be the problem?


After upgrading namespace::clean I get this error:

The old Moose::Util::MetaRole API (before version 0.94) has been deprecated at /usr/share/perl5/Catalyst/Exception/Basic.pm line 3
Catalyst::Exception::Basic::BEGIN() called at /usr/lib/perl5/MooseX/Role/WithOverloading.pm line 3
eval {...} called at /usr/lib/perl5/MooseX/Role/WithOverloading.pm line 3
require Catalyst/Exception/Basic.pm called at /usr/local/lib/perl/5.10.1/Class/MOP.pm line 114
Class::MOP::__ANON__() called at /usr/local/share/perl/5.10.1/Try/Tiny.pm line 71
eval {...} called at /usr/local/share/perl/5.10.1/Try/Tiny.pm line 67
Try::Tiny::try('CODE(0x8f366b8)', 'Try::Tiny::Catch=REF(0x8e6b9c8)') called at /usr/local/lib/perl/5.10.1/Class/MOP.pm line 125
Class::MOP::load_first_existing_class('Catalyst::Exception::Basic') called at /usr/local/lib/perl/5.10.1/Class/MOP.pm line 137
Class::MOP::load_class('Catalyst::Exception::Basic', undef) called at /usr/local/lib/perl/5.10.1/Moose/Util.pm line 113
Moose::Util::_apply_all_roles('Moose::Meta::Class=HASH(0x8f36458)', undef, 'Catalyst::Exception::Basic') called at /usr/local/lib/perl/5.10.1/Moose/Util.pm line 91

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

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

发布评论

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

评论(1

孤凫 2024-10-19 14:42:04

您安装的 Package::Stash 版本似乎破坏了您安装的版本namespace::clean 并且没有捕获冲突警告。将命名空间::clean 升级到最新版本应该可以解决您的问题。

It looks like you installed a version of Package::Stash which breaks your installed version of namespace::clean and didn't catch the conflict warning. Upgrading namespace::clean to the newest version should resolve your problems.

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