tôi khuyên bạn nên sử dụng Module::Starter
để thiết lập một khuôn mẫu cho mỗi mô-đun. Sau khi cài đặt, bạn có thể gọi module-starter
từ dòng lệnh, ví dụ:
module-starter --module=My::Module --author="Jessada Thutkawkorapin" [email protected]
hoặc, nếu bạn muốn có một phân phối với nhiều mô-đun:
module-starter --distro=Foo --module=Foo,Foo::Bar,Foo::Baz --author="Jessada Thutkawkorapin" [email protected]
Sau đó, chỉ cần ghi đè lên .pm
file với các module của bạn , bao gồm bất kỳ kiểm tra đơn vị nào mà bạn muốn chạy (các kiểm tra mặc định về cơ bản kiểm tra cú pháp của mô đun cùng với cú pháp nhóm). Một cài đặt cơ bản của các mô-đun sau đó được thực hiện thông qua
perl Makefile.PL
make
make test
make install
(về mặt kỹ thuật, make test
là không bắt buộc, nhưng nó rất khuyến khích).
Bây giờ, nếu các mô-đun dựa trên module CPAN khác, sau đó bạn có thể sử dụng các mô-đun CPAN
để cài đặt chúng, ví dụ:
use strict;
use warnings;
use CPAN;
#populate however you'd like, either hard-coded, read from a file, etc.
my @modules_to_install=();
foreach(@modules_to_install)
{
CPAN::Shell->install($_);
}
Vì vậy, bạn có thể phân phối một zip/tarball/etc với các thư mục và các tệp mà module-starter
bắt đầu (và bạn đã sửa đổi) cùng với tập lệnh ở trên để cài đặt bất kỳ phụ thuộc CPAN nào và gọi nó là: cpan_install.pl
. Nếu bạn muốn, sau đó bạn có thể bọc tất cả mọi thứ trong một kịch bản cuối cùng được gọi là, nói rằng, install.pl
mà làm tất cả những điều này.
Nếu các đồng nghiệp của bạn đều có Ubuntu (tốt nhất là cùng một phiên bản) và có đủ chúng, bạn nên học cách xây dựng gói '* .deb'. –
@BasileStarynkevitch, tôi không muốn làm cho nó cụ thể. Họ là người dùng Linux hoặc Mac –
Bạn đã đọc [Module :: Build] (http://search.cpan.org/dist/Module-Build/lib/Module/Build.pm) chưa? – Konerak