0

我正在从书中学习催化剂the definitive guide to catalyst。我已经完成了演示应用程序——lolcatalyst_lite。当我使用命令"CATALYST_ENGINE=HTTP:Prefork script/myapp_server.pl"时,出现了问题;并且根据书,我重写了文件lite.pm,错误还在。

我收回我在文件 lite.pm 中添加的内容。为什么命令"script/myapp_server.pl"仍然错误:

Catalyst::Engine::HTTP:Prefork' is not a module name
    Compilation failed in require at /usr/local/share/perl/5.14.2/Catalyst/ScriptRunner.pm line 50.

我是否在操作系统中设置了一些参数?我怎么能回去?

4

1 回答 1

0

自从这本书在这个特定领域出版以来,Catalyst 已经看到了一些相当大的变化。

旧的 Catalyst Engine 代码已替换为 PSGI/Plack:

Catalyst 曾经包含一整套 Catalyst::Engine::XXXX 类来处理各种 Web 服务器和环境(例如 CGI、FastCGI、mod_perl)等。

这在 Catalyst 5.9 中已更改,因此所有这些工作都由 Catalyst 实现 PSGI 规范完成,使用 Plack 的适配器来实现该功能。

查看Catalyst::PSGI的文档,其中解释了原因以及如何处理现有代码。lolcat 教程是最新的(v5.8),所以你应该可以毫无困难地升级它。

于 2012-08-13T03:24:46.053 回答