Perl Moose - 如何部署我的类pm文件?

del*_*074 4 perl moose

我正在尝试学习Moose并需要知道如何正确部署我的类pm文件.

我的意思是我创建了一个Person.pm.

我可以在我的主程序包中调用它,如果它与我的main.pl脚本在同一个文件夹中使用Person; 或者我必须做一个make并将其部署到我的@INC perl模块位置才能使用该文件?

我希望在我的本地文件夹中创建pm类文件,然后只需使用我的程序main.pl在该文件夹中调用它们.

我该怎么做呢?

Joe*_*hon 10

Perl默认.将第一项作为第一项@INC,因此并排将起作用.如果你想要更复杂,你可以使用FindBinuse lib:

#!/usr/bin/env perl
use strict;
use warnings;

use FindBin;
use lib "$FindBin::Bin/lib";

# Main program continues...
Run Code Online (Sandbox Code Playgroud)

现在将您的模块放在lib/与脚本相同的目录中,您的脚本将会看到它们.这可以使您的库模块和脚本分开.如果你正在编写测试,你可以拥有一个t/包含测试脚本的库,如下所示:

use strict;
use warnings;

use FindBin;
use lib "$FindBin::Bin/../lib";

use Test::More;
# other test modules, your plan, etc.
Run Code Online (Sandbox Code Playgroud)

并且您的测试也会在库模块的正确位置查找.

您也可以使用PERL5OPT=-I/path/to/some/library该路径添加到您的路径@INC,然后根本不需要use lib.