【发布时间】:2018-07-18 14:14:29
【问题描述】:
我运行 h2xs 来启动一个新的 Perl 模块。它创建主模块和 Makefile.PL,包名以双冒号结尾。例如在 My/Module.pm 中:
package My::Module::
在 Makefile.PL 中:
WriteMakefile(
NAME => 'My::Module::',
...
);
因此,小脚本
perl -Ipath/to/my/module -MMy::Module -e 'print $My::Module::VERSION, "\n"'
什么都不打印。
当我将包名称更改为不带尾随冒号的“My::Module”时,该脚本将打印版本号。
为什么h2xs默认会在主包名后面加上'::'?我在文档中找不到任何内容。
Perl 5.18.2
【问题讨论】:
-
了解您运行的确切
h2xs命令行会有所帮助。我从来没有这样做过:-)
标签: perl