免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1907 | 回复: 7
打印 上一主题 下一主题

看哪位大神能解决这个@INC的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-11-30 10:03 |只看该作者 |倒序浏览
       有一个模块a.pm ,我将其用export导入到了@INC中,并且用echo $PERL5LIB 也能查看到成功导入到@INC了。手动运行一个程序,里面包含了 use a.pm ,程序运行正确。但是我用crontab 定时在后台运行的时候,就会提示错误:a.pm 不在@INC中。我就很是奇怪了……手动运行成功,后台crontab运行就会出错。问题出在哪?

论坛徽章:
0
2 [报告]
发表于 2012-11-30 10:23 |只看该作者
先确认运行crontab的账户是否就是你的测试账户;然后可以加上use lib行。不过还是要注意目录访问权限。

论坛徽章:
0
3 [报告]
发表于 2012-11-30 10:23 |只看该作者
,就没有一位大神愿意说句话的咯 ……

论坛徽章:
0
4 [报告]
发表于 2012-11-30 10:45 |只看该作者
回复 2# longbow0

perl -e "print @INC"
/home/myhome/perllib/usr/lib/perl5/5.10.0/x86_64-linux-thread-multi/usr/lib/perl5/5.10.0/usr/lib/perl5/site_perl/5.10.0/x86_64-linux-thread-multi/usr/lib/perl5/site_perl/5.10.0/usr/lib/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi/usr/lib/perl5/vendor_perl/5.10.0/usr/lib/perl5/vendor_perl

     自己的perllib包含在@INC中,你的方法试过了行不通。
     要不你们也试试……

论坛徽章:
0
5 [报告]
发表于 2012-11-30 10:48 |只看该作者
Tancredo2005 发表于 2012-11-30 10:03
有一个模块a.pm ,我将其用export导入到了@INC中,并且用echo $PERL5LIB 也能查看到成功导入到@INC了 ...


你的情况我也遇到过,可能是因为执行crontab的进程没有相应lib的环境变量,你在b.pm中手动添加那个路径试一试, like this:
  1. use lib "/path";
  2. use B;
复制代码

论坛徽章:
0
6 [报告]
发表于 2012-11-30 11:23 |只看该作者
回复 5# illidanee

    use lib是可以行得通的。不过就是要写全路径,这个无疑 不怎么好,降低了程序的移植性。
    以后用这个crontab还是得小心点。手动运行成功了,crontab可能运行不成功。

论坛徽章:
42
19周年集字徽章-周
日期:2019-10-14 14:35:31平安夜徽章
日期:2015-12-26 00:06:30数据库技术版块每日发帖之星
日期:2015-12-01 06:20:002015亚冠之首尔
日期:2015-11-04 22:25:43IT运维版块每日发帖之星
日期:2015-08-17 06:20:00寅虎
日期:2014-06-04 16:25:27狮子座
日期:2014-05-12 11:00:00辰龙
日期:2013-12-20 17:07:19射手座
日期:2013-10-24 21:01:23CU十二周年纪念徽章
日期:2013-10-24 15:41:34IT运维版块每日发帖之星
日期:2016-01-27 06:20:0015-16赛季CBA联赛之新疆
日期:2016-06-07 14:10:01
7 [报告]
发表于 2012-11-30 11:39 |只看该作者
你在shell中的export在crontab中是无效的。
你需要在crontab里面重新指定环境变量或者封装一个sh

论坛徽章:
0
8 [报告]
发表于 2012-11-30 13:45 |只看该作者
crontab 的环境变量和你登陆进去的环境变量不一样的,你可以在crontab那边重载下需要的变量
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP