2012-08-12 54 views
0

我正在從本書the definitive guide to catalyst瞭解Catalyst。我已經完成了演示應用 - lolcatalyst_lite。當我使用命令"CATALYST_ENGINE=HTTP:Prefork script/myapp_server.pl"時,出現了一些問題;根據這本書,我重寫了lite.pm文件,錯誤依然存在。Catalyst :: Engine :: HTTP:Prefork

我收回了我在文件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. 

難道我設置操作系統一些說法?我怎樣才能回去?

回答

0

自從這本書發表在這個特定領域以來,Catalyst已經看到了一些非常重大的變化。

舊催化劑發動機代碼has been replaced與PSGI /普拉克:用於包含整個組的催化劑::引擎:: XXXX類來處理各種web服務器和環境的

催化劑(例如CGI,FastCGI的, mod_perl)等。

這已在Catalyst 5.9中進行了更改,以便所有這些工作都由Catalyst實施PSGI規範完成,使用Plack的適配器來實現該功能。

看看Catalyst::PSGI的文檔,它解釋了爲什麼,以及如何處理現有的代碼。 lolcat教程頗爲流行(v5.8),所以you should be able to upgrade it沒有困難。

+0

有什麼好書嗎?謝謝。 – 2012-08-13 12:12:54

+0

你擁有的這本書仍然是最好的資源,IMO。實際上,只有這個特定領域的框架發生了變化,才影響了本書的現狀。你讀過關於升級的鏈接嗎?這就是你需要的。 – RET 2012-08-13 13:51:02