加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Perl的lib pragma如何工作?

发布时间:2020-12-16 06:24:51 所属栏目:大数据 来源:网络整理
导读:我使用lib“./DIR”从其他地方的文件夹中获取库.但是,它似乎不适用于我的服务器,但它在我的本地桌面上工作正常. 任何特殊原因? 还有一个问题,是否使用lib在几个模块中传播? 两种情况: 假设我创建了一个需要几个库的基类,但我知道它需要扩展,扩展类需要使
我使用lib“./DIR”从其他地方的文件夹中获取库.但是,它似乎不适用于我的服务器,但它在我的本地桌面上工作正常.
任何特殊原因?

还有一个问题,是否使用lib在几个模块中传播?

两种情况:
假设我创建了一个需要几个库的基类,但我知道它需要扩展,扩展类需要使用另一个库.我可以在基类中使用lib命令吗?还是我需要把它放在每个扩展课程中?

最后,我可以只使用一个包,其中包中包含一堆使用lib,它会将使用lib语句传播到我当前的模块吗? < - 我不这么认为,但反正要求

解决方法

的.在您的使用中,lib语句表示“当前工作目录”,并且仅在从右侧目录运行脚本时才起作用.服务器对cwd的想法可能是不同的(或未定义的).假设库目录与脚本位于同一位置并且是私有的,您希望执行以下操作:

use FindBin;
use lib "$FindBin::Bin/DIR";

use lib语句会影响@INC – 使用或需要模块时perl搜索的位置列表.它全局影响解释器的当前实例.您应该只在脚本中使用lib语句,而不是在模块中.

原则上,您可以拥有一个包含MyBibs的包,它包含一堆使用lib语句,然后在使用这些位置中的任何包之前使用MyLibs,但我不推荐它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读