Perl的lib pragma如何工作?
发布时间:2020-12-16 06:24:51 所属栏目:大数据 来源:网络整理
导读:我使用lib“./DIR”从其他地方的文件夹中获取库.但是,它似乎不适用于我的服务器,但它在我的本地桌面上工作正常. 任何特殊原因? 还有一个问题,是否使用lib在几个模块中传播? 两种情况: 假设我创建了一个需要几个库的基类,但我知道它需要扩展,扩展类需要使
我使用lib“./DIR”从其他地方的文件夹中获取库.但是,它似乎不适用于我的服务器,但它在我的本地桌面上工作正常.
任何特殊原因? 还有一个问题,是否使用lib在几个模块中传播? 两种情况: 最后,我可以只使用一个包,其中包中包含一堆使用lib,它会将使用lib语句传播到我当前的模块吗? < - 我不这么认为,但反正要求 解决方法
的.在您的使用中,lib语句表示“当前工作目录”,并且仅在从右侧目录运行脚本时才起作用.服务器对cwd的想法可能是不同的(或未定义的).假设库目录与脚本位于同一位置并且是私有的,您希望执行以下操作:
use FindBin; use lib "$FindBin::Bin/DIR"; use lib语句会影响@INC – 使用或需要模块时perl搜索的位置列表.它全局影响解释器的当前实例.您应该只在脚本中使用lib语句,而不是在模块中. 原则上,您可以拥有一个包含MyBibs的包,它包含一堆使用lib语句,然后在使用这些位置中的任何包之前使用MyLibs,但我不推荐它. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |