如何确定未定义 $VERSION 的已安装 Perl 模块的版本?

How do I determine the version of an installed Perl module where $VERSION is not defined?

我需要找到安装在我的一台服务器上的 Mojo:::Util 的版本,所以我可以在 Mojolicious Github repository. I followed the recommendations on How can I find the version of an installed Perl module? 上提交问题,主要是:

perl -MMojo::Util\ 9999

我 运行 得到的回复是:

Mojo::Util does not define $Mojo::Util::VERSION--version check failed.
BEGIN failed--compilation aborted.

我最初使用 CPANM 安装 Mojo::DOM 并获得 Mojo::Util 因为 Mojo::DOM 依赖于它。

如何确定未定义 $VERSION 的已安装 Perl 模块的版本?

他们没有版本。 Mojolicious 发行版中所有模块的版本被认为与 Mojolicious 的版本相同(这是一个有点不标准的发行版)。因此,您将检查 Mojolicious 的版本,依赖于特定版本的 Mojolicious 模块,并将 Mojolicious 传递给 cpanm 以更新分发。

perl -MMojolicious\ 9999

请注意,Mojolicious 还包含一个版本命令:

mojo version

一般来说,如果您正在使用或依赖的模块没有版本,请检查或依赖于发行版主模块的版本,即共享发行版名称的模块(与一些遗留异常,如 libwww-perl)。可以在其 metacpan page or in the packages index.

上找到模块的分布