簡介
Module-Starter 項目中包含多個模塊,他們協同工作完成創建項目骨架的任務。
在這個項目中包含的模塊如下:
- Module::Starter
- Module::Starter::App
- Module::Starter::BuilderSet -
- Module::Starter::Plugin::Template
- Module::Starter::Simple
module-starter 是Module::Starter的命令行接口,我們調用 module-starter 命令來生成一個項目骨架時,其實是在運行Module::Starter::App模塊中的代碼。當然Module::Starter::App模塊會調用其他模塊(Module::Starter,Module::Starter::BuilderSet,Module::Starter::Plugin::Template,Module::Starter::Simple)來協同工作完成任務。
如果沒有提供項目的目錄名稱,則將使用項目名。如果沒有提供項目名稱,則將使用第一個列出的模塊名稱作為項目名稱。
還可以提供多個--builder選項來生成多個構建器文件。
module-starter 命令
常用參數選項
--module=module 項目的主模塊名 (required, repeatable)
--distro=name 項目名 (optional)
--dir=dirname 新的項目會放到哪個目錄中 (optional)
--builder=module 使用哪個模塊進行構建,可用的值有: 'ExtUtils::MakeMaker' 和 'Module::Build'
--eumm 和 --builder=ExtUtils::MakeMaker 的功能相同
--mb 和 --builder=Module::Build 的功能相同
--mi 和 --builder=Module::Install 的功能相同
--author=name 作者是名字 (taken from getpwuid if not provided)
--email=email 作者的電子郵件 (taken from EMAIL if not provided)
--ignores=type 需要忽略的文件類型 (repeatable)
--license=type 開源許可證
(default is artistic2)
--minperl=ver 支持的最小的Perl版本 (optional default is 5.006)
--fatalize 生成warnings代碼,指定所有警告都會引發致命錯誤(use warnings FATAL => 'all')
--verbose 打印詳細的工作日志
--force 強制執行,覆蓋已經存在的文件和文件夾
--help 顯示幫助信息
所有可用的開源許可證如下
perl, artistic, artistic2, mit, mozilla, mozilla2, bsd, freebsd, cc0,
gpl, lgpl, gpl3, lgpl3, agpl3, apache, qpl
所有可用的“忽略”類型如下
cvs, git, hg, manifest, generic
注意: 如果manifest 包含在內,則MANIFEST文件不會被包含,而僅僅會包含MANIFEST.SKIP文件。
下面是一些例子:
module-starter --module=Foo::Bar,Foo::Bat --author="yy" --email=aa@xx.com
## 指定ignores和開源許可
module-starter --module=Foo::Bar,Foo::Bat --author="yy" --email=aa@xx.com --ignores=git --license=mit
其他參數選項
還有兩個不常用的參數選項,--class 和 --plugin。
a