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

Dav*_*llo 3 perl mojolicious cpanm

我需要找到Mojo:::Util一台服务器上安装的版本,因此可以在Mojolicious Github存储库上提交问题。我遵循了有关如何找到已安装的Perl模块的版本的建议主要是:

perl -MMojo::Util\ 9999
Run Code Online (Sandbox Code Playgroud)

我运行时得到的响应是:

Mojo::Util does not define $Mojo::Util::VERSION--version check failed.
BEGIN failed--compilation aborted.
Run Code Online (Sandbox Code Playgroud)

我最初Mojo::DOM使用CPANM 安装并得到了,Mojo::Util因为Mojo::DOM要依赖它。

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

Gri*_*nnz 6

他们没有版本。Mojolicious发行版中所有模块的版本都被认为与Mojolicious的版本相同(这是某种非标准的发行版)。因此,您将检查Mojolicious的版本,取决于Mojolicious模块的特定版本,然后将Mojolicious传递给cpanm以更新发行版。

perl -MMojolicious\ 9999
Run Code Online (Sandbox Code Playgroud)

请注意,Mojolicious还包括一个version命令:

mojo version
Run Code Online (Sandbox Code Playgroud)

通常,如果您正在使用或依赖的模块没有版本,请检查或依赖发行版主模块的版本,主模块是共享发行版名称的模块(某些遗留异常,例如libwww -perl)。可以在其metacpan页或程序包索引中找到模块的分布。