今天我开始学习Mojolicious框架.恕我直言,最好的方法是"通过实例学习",所以研究一些"已经完成"的应用程序.因此我下载了Mojolicious-Boilerplate,应该是Mojolicious和Twitter bootstrap的演示.不幸的是它甚至没有开始.
#!/usr/bin/env perl
use Mojo::Base -strict;
use File::Basename 'dirname';
use File::Spec;
push @INC, join('/', File::Spec->splitdir(dirname(__FILE__)), '..', 'lib');
# Check if Mojolicious is installed;
die <<EOF unless eval 'use Mojolicious::Commands; 1';
It looks like you don't have the Mojolicious framework installed.
Please visit http://mojolicio.us for detailed installation instructions.
EOF
# Application
$ENV{MOJO_APP} ||= 'Boilerplate';
# Start commands
Mojolicious::Commands->start;
Run Code Online (Sandbox Code Playgroud)
编辑开始和错误:
$ morbo script/boilerplate
Couldn't load application from file "script/boilerplate": Can't locate object method "start" via package "Mojolicious::Commands" at script/boilerplate line 20.
Run Code Online (Sandbox Code Playgroud)
我在https://github.com/kraih/mojo/blob/master/Changes中找到了:
3.94 2013-04-08 - 从Mojolicious :: Commands中删除了不推荐使用的启动方法.
有:
$ mojo version
CORE
Perl (v5.16.3, darwin)
Mojolicious (4.18, Top Hat)
OPTIONAL
EV 4.0+ (4.15)
IO::Socket::IP 0.16+ (0.21)
IO::Socket::SSL 1.75+ (1.952)
This version is up to date, have fun!
Run Code Online (Sandbox Code Playgroud)
正如您自己提到的那样,该start方法已弃用,现已删除.start_app($name)您可以在此处找到它的替代品:http://mojolicio.us/perldoc/Mojolicious/Commands#start_app
您正在玩的示例根本不是最新的.如果你让它在你的机器上运行,你可以向官方Git存储库发出拉动请求(如G. Cito所提到的).我相信他们会很高兴接受这个修复.