我使用命令生成了一个 mojolicious 应用程序mojo generate app first-app
。它生成了应用程序结构,当使用morbo ./script/first-app
.
文件结构如下: mojo app structure
我morbo ./script/first-app
在项目目录的根目录下运行时的错误是这个错误:
Can't load application from file "/home/djnorrisdev/Documents/mojo-practice/first-app/script/first-app":
Can't find application class "first-app" in @INC. (
/home/djnorrisdev/Documents/mojo-practice/first-app/lib
/home/djnorrisdev/perl5/perlbrew/perls/perl-5.30.0/lib/site_perl/5.30.0/x86_64-linux
/home/djnorrisdev/perl5/perlbrew/perls/perl-5.30.0/lib/site_perl/5.30.0
/home/djnorrisdev/perl5/perlbrew/perls/perl-5.30.0/lib/5.30.0/x86_64-linux
/home/djnorrisdev/perl5/perlbrew/perls/perl-5.30.0/lib/5.30.0)
Compilation failed in require at (eval 72) line 1
(为了便于阅读,添加了换行符。缩进的行是上一行的延续。)
我尝试使用 morbo 的完整路径(如 6 年的 SO 帖子中所述),但这给出了与上述相同的错误。该命令是这样的:/home/djnorrisdev/perl5/perlbrew/pls/perl-5.30.0/bin/morbo ./script/first-app
我猜任何熟悉完整 mojolicious 应用程序的人都会熟悉脚本文件,但这里的内容是script/first-app
:
#!/usr/bin/env perl
use strict;
use warnings;
use Mojo::File 'curfile';
use lib curfile->dirname->sibling('lib')->to_string;
use Mojolicious::Commands;
# Start command line interface for application
Mojolicious::Commands->start_app('first-app');
考虑到这是一个由 mojolicious 生成的应用程序,我认为它不应该出现 @INC 错误并且可以毫无问题地使用 morbo 运行。有没有人对此有见识?