我有一个问题(催化剂相关)显然与Moose/Class :: MOP.启动我的服务器我得到以下输出...(以下所示的所有荣耀)
角色应用程序的别名和排除选项已重命名为-alias和-excludes at /usr/local/lib/perl/5.10.1/Moose/Meta/Role/Application.pm第26行Moose :: Meta :: Role :: Application :: new('Moose :: Meta :: Role :: Application :: ToRole','排除','ARRAY(0x9645568)')调用/usr/local/lib/perl/5.10.1/Moose/Meta /Role.pm第416行Moose :: Meta :: Role :: apply('Moose :: Meta :: Role = HASH(0x95b3368)','Moose :: Meta :: Role = HASH(0x9446d90)','排除' ,'ARRAY(0x9645568)'调用/usr/local/lib/perl/5.10.1/Moose/Util.pm第133行Moose :: Util :: _ apply_all_roles('Moose :: Meta :: Role = HASH(0x9446d90) )',undef,'MooseX :: Getopt','HASH(0x9454a08)'调用/usr/local/lib/perl/5.10.1/Moose/Util.pm第87行Moose :: Util :: apply_all_roles('穆斯::元::Role = HASH(0x9446d90)','MooseX :: Getopt','HASH(0x9454a08)'调用/usr/local/lib/perl/5.10.1/Moose/Role.pm第26行Moose :: Role :: with('Moose :: Meta :: Role = HASH(0x9446d90)','MooseX :: Getopt','HASH(0x9454a08)')调用/usr/local/lib/perl/5.10.1/Moose/Exporter. pm line 294 Moose :: Role :: with('MooseX :: Getopt','HASH(0x9454a08)')调用/usr/share/perl5/Catalyst/ScriptRole.pm第8行需要Catalyst/ScriptRole.pm调用at/usr/local/lib/perl/5.10.1/Class/MOP.pm第113行类:: MOP :: __ ANON __()在/usr/share/perl5/Try/Tiny.pm第71行调用eval {...}调用/usr/share/perl5/Try/Tiny.pm第67行试试:: Tiny :: try('CODE(0x93c2910)','Try :: Tiny :: Catch = REF(0x93bba38)')在/ usr调用/local/lib/perl/5.10.1/Class/MOP.pm第124行类:: MOP ::load_first_existing_class('Catalyst :: ScriptRole')在/usr/local/lib/perl/5.10.1/Class/MOP.pm第136行调用Class :: MOP :: load_class('Catalyst :: ScriptRole',undef)调用于/usr/local/lib/perl/5.10.1/Moose/Util.pm第109行Moose :: Util :: _ apply_all_roles('Moose :: Meta :: Class = HASH(0x8fc9378)',undef,'Catalyst :: ScriptRole ')调用/usr/local/lib/perl/5.10.1/Moose/Util.pm第87行Moose :: Util :: apply_all_roles('Moose :: Meta :: Class = HASH(0x8fc9378)','催化剂: :ScriptRole')调用/usr/local/lib/perl/5.10.1/Moose.pm第58行Moose :: with('Moose :: Meta :: Class = HASH(0x8fc9378)','Catalyst :: ScriptRole' )调用/usr/local/lib/perl/5.10.1/Moose/Exporter.pm第294行Moose :: with('Catalyst :: ScriptRole')在/ usr/share/perl5/Catalyst/Script/Server中调用.pm第14行需要在/usr/local/lib/perl/5.10.1/Class/MOP.pm第113行调用Catalyst/Script/Server.pm在/ usr/share/perl5调用的Class :: MOP :: __ ANON __() /Try/Tiny.pm第71行eval {...}在/usr/share/perl5/Try/Tiny.pm第67行调用Try :: Tiny :: try('CODE(0x8f6dc38)','Try :: Tiny :: Catch = REF(0x8f8d1c8)')在/usr/local/lib/perl/5.10.1/Class/MOP.pm第124行调用Class :: MOP :: load_first_existing_class('Catalyst :: Script :: Server')在/usr/local/lib/perl/5.10.1/Class/MOP.pm第136行调用在/ usr/share/perl5/Catalyst调用的Class :: MOP :: load_class('Catalyst :: Script :: Server') /ScriptRunner.pm第18行Catalyst :: ScriptRunner :: run('Catalyst :: ScriptRunner','Jamaica','Server')在script/boca_server.pl第8行调用旧的Moose :: Util :: MetaRole API(之前)版本0.94)已弃用/usr/local/lib/perl/5.10.1/Moose/Util/MetaRole.pm第16行Moose :: Util :: MetaRole :: apply_metaclass_roles('for_class','Catalyst :: Controller', 'metaclass_roles','ARRAY(0x97bdff8)','method_metaclass_roles','ARRAY(0x97ab9f0)','wrapped_method_metaclass_roles','ARRAY(0x981d650)'调用/usr/share/perl5/MooseX/MethodAttributes.pm第32行MooseX :: MethodAttributes :: init_meta('MooseX :: MethodAttributes','for_class','Catalyst :: Controller','metaclass',undef)在/usr/local/lib/perl/5.10.1/Moose/Exporter中调用. pm line 355 Moose :: Exporter :: __ ANON __('MooseX :: MethodAttributes')在/usr/share/perl5/Catalyst/Controller.pm第10行调用Catalyst :: Controller ::在/usr/share/perl5/Catalyst/Controller.pm第10行eval {...}调用的BEGIN()在/usr/share/perl5/Catalyst/Controller.pm第10行调用需要在/ /中调用的/ Catalyst.pm usr/share/perl5/Catalyst.pm第16行Catalyst :: BEGIN()调用/usr/share/perl5/Catalyst/Controller.pm第10行eval {...}在/ usr/share/perl5/Catalyst/Controller.pm第10行需要在/home/bobek/dev/build_7.2/mvc/Jamaica/script/../lib/Jamaica.pm第17行调用Catalyst.pm在/ usr/share调用牙买加:: BEGIN()在/usr/share/perl5/Catalyst/Controller.pm第10行调用的/perl5/Catalyst/Controller.pm第10行eval {...}需要在/usr/local/lib/perl/5.10.1调用Jamaica.pm /Class/MOP.pm第113行Class :: MOP :: __ ANON __()调用/usr/share/perl5/Try/Tiny.pm第71行eval {...}在/ usr/share/perl5/Try/Tiny.pm第67行试试::Tiny :: try('CODE(0x8fb3230)','Try :: Tiny :: Catch = REF(0x969fee0)')在/usr/local/lib/perl/5.10.1/Class/MOP.pm第124行调用:: MOP :: load_first_existing_class('Jamaica')在/usr/local/lib/perl/5.10.1/Class/MOP.pm第136行调用Class :: MOP :: load_class('Jamaica')在/ usr /调用share/perl5/Catalyst/ScriptRole.pm第61行Catalyst :: ScriptRole :: _ run_application('Catalyst :: Script :: Server = HASH(0x969d748)')在/usr/share/perl5/Catalyst/Script/Server.pm中调用第181行Catalyst :: Script :: Server :: run('Catalyst :: Script :: Server = HASH(0x969d748)')在/usr/local/lib/perl/5.10.1/Class/MOP/Method/Wrapped中调用.pm第48行Class :: MOP :: Method :: Wrapped :: __ ANON __('Catalyst :: Script :: Server = HASH(0x969d748)')在/usr/local/lib/perl/5.10.1/Class/调用MOP/Method/Wrapped.pm第89行Catalyst ::脚本::服务器::运行('Catalyst :: Script :: Server = HASH(0x969d748)')在/usr/share/perl5/Catalyst/ScriptRunner.pm第20行调用Catalyst :: ScriptRunner :: run('Catalyst: :ScriptRunner','Jamaica','Server')在script/boca_server.pl第8行调用
我是Catalyst的新手(我喜欢它,我只是想成功地启动并运行).我已经检查了最新版本的Moose和Class :: MOP,它们是最新的(就CPAN而言).
希望熟悉Moose的人以前见过这个.任何建议或开始检查的地方将不胜感激.
米歇尔B.
您正在运行旧版本的Catalyst.此问题已在commit r13516中修复,并且自版本5.80026起已在CPAN上可用(5.80028是最新版本并推荐).
催化剂正在使用Moose的一些弃用功能,它刚刚开始发出警告.