2015-07-09 17 views
8

Với pip, bạn có thể tạo tệp yêu cầu để chỉ định thư viện cần cài đặt. Có tương đương với mô-đun perl sử dụng CPAN?Yêu cầu CPAN Tệp

Tôi đã xem ExtUtils :: MakeMaker, nhưng điều này có vẻ như tệp thực hiện dành riêng cho từng mô-đun.

tôi đoán thử và đưa ra một ý tưởng tốt hơn về những gì tôi đang hỏi là nếu có một cách để làm một cái gì đó giống như

cpan install -r requirements.txt 

và sau đó xác định những module để cài đặt trong tập tin yêu cầu.

Cảm ơn trước!

+0

Bạn có hỏi cách chỉ định các điều kiện tiên quyết cho mô-đun bạn đã viết, để người khác có thể cài đặt nó không? Hay bạn chỉ muốn cài đặt một loạt các mô-đun không liên quan trên hệ thống của riêng bạn được liệt kê trong một tệp? – ThisSuitIsBlackNot

Trả lời

4

Tôi nghĩ Carton là thứ bạn đang tìm kiếm.

Để bắt đầu sử dụng Carton, hãy cài đặt nó. Sau đó tạo một cpanfile với sự phụ thuộc của bạn:

require 'Test::Most'; 
require 'Math::BaseConvert'; 

Với tập tin này tại chỗ, chạy

carton install 

này sẽ cài đặt những mô-đun, nếu cần thiết, và viết một tập tin gọi là cpanfile.snapshot với sự phụ thuộc thông tin.

Cũng thấy: Brief Notes on Managing Perl Dependencies with Carton

PS: Kiểm tra Stratopan.

+0

Cảm ơn, thùng carton và cpanfile chính xác là những gì tôi đang tìm kiếm – DoolAy

8

Khi bạn cài đặt mô-đun từ CPAN, mỗi mô-đun xác định phụ thuộc của nó trong Makefile.PL (hoặc Build.PL) và vỏ CPAN sẽ giải quyết các phụ thuộc đệ quy đó khi cài đặt.

Nếu bạn muốn chỉ định phụ thuộc cho một ứng dụng (chứ không phải là một mô-đun CPAN), bạn có thể tạo một tập tin gọi cpanfile ở định dạng này:

requires 'JSON'; 
requires 'Template'; 
requires 'DateTime'; 
requires 'DBIx::Class'; 

Sau đó, bạn có thể cài đặt những người phụ thuộc với một lệnh:

cpanm --installdeps . 

Lệnh cpanm đến từ phân phối App::cpanminus và là công cụ thay thế để cài đặt mô-đun từ CPAN.

Xem cpanfile docs để biết thêm thông tin.

+0

đã tiết kiệm được hàng giờ..thanks – feng63600

Các vấn đề liên quan