【发布时间】:2014-06-29 22:00:33
【问题描述】:
当您使用Module::Install 创建一个Makefile.PL 时,您可以使用requires、test_requires、recommends 等关键字定义依赖关系。在安装基于此类 Makefile.PL 的发行版时,会安装所有标记为必需的依赖项,但会卸载推荐的依赖项。
我注意到在较新版本的 CPAN 中有一个配置选项 recommends_policy,用于切换是否安装推荐/可选包。它正是提供了我正在寻找这个问题的功能。
为了避免编辑我的 cpan 配置,我想知道是否可以通过使用 cpan 的命令行参数或我的 Makefile.PL 中的语句来启用此功能如果我的发行版的必需依赖项之一具有推荐的依赖项,也会这样做。
我在 cpan 文档中没有找到回答我的问题的选项,recommends in Module::Install 的文档没有提供更多信息。
谷歌搜索关键字只是遇到了很多不同的问题和答案,以至于我无法在大海捞针。
附言我知道我可以只需要我自己的 Makefile.PL 中的包,但随后我将开始管理外部项目的依赖关系,这是一种开销,我想避免。
编辑:我正在寻找类似的东西
cpan --recommends_policy=1 Module::Name
【问题讨论】:
-
所以您要求我们检查您的
cpan版本的man cpan? -
如果您确实想要它启用的行为,我认为没有理由不编辑 your cpan 配置。特别是您链接的文档详细说明了如何在保持默认值不变的情况下做到这一点......然后它再次也解释了如何设置单个配置而不将它们提交到任何文件中(大多数可能只为这个会话设置它们)所以我真的不知道你的问题是什么,看看你显然是如何阅读解释你的问题的文档。
-
Ikegami,如果我在联机帮助页上找到答案,我不会问问题。我不知道,为什么 StackOverflow 上的人倾向于那样做……那太傲慢了,让 StackOverflow 成为网络上令人失望的地方。如果联机帮助页中有答案,请提供帮助并向我解释我错过或不理解的地方或内容。 DeVadder,既然我想将我的工具提供给其他人,那会很酷,不让他们处理额外的配置文件,增加复杂性和增加学习曲线。我正在寻找类似 cpan --recommends_policy=1 Module::Name