Windows下Perl用Text::CSV报错Can't locate Class/CSV.pm求解决
解决Perl中"Can't locate Class/CSV.pm"报错的方案
首先得戳破核心问题:你代码里同时写了use Class::CSV;和use Text::CSV;,但这是两个完全独立的Perl模块。你找到的那几个CSV.pm,分别属于SQL::Dialects::CSV、DBD::CSV这类其他模块,和Class::CSV半毛钱关系都没有——你的系统里根本就没有Class::CSV这个模块的文件,所以加lib路径完全是白费功夫。
下面分两种场景给你解决方案:
场景1:你其实只需要Text::CSV模块
如果你的业务逻辑根本用不上Class::CSV,那直接删掉代码里的use Class::CSV;这一行就行。报错的根源就是这行代码在调用一个未安装的模块,和Text::CSV本身毫无关系。
场景2:你确实需要Class::CSV模块
那你得先把这个模块装上,Windows下有两种常用安装方式:
方式1:用ActivePerl的ppm工具(如果你用的是ActivePerl)
打开命令提示符(CMD),直接执行:
ppm install Class-CSV
注意这里模块名是Class-CSV(短横线分隔),不是代码里的Class::CSV(双冒号分隔)。
方式2:用cpan工具(适用于Strawberry Perl或已配置cpan的ActivePerl)
打开命令提示符,执行:
cpan Class::CSV
执行后会自动完成下载、编译、安装全流程,装完之后你的代码就能正常找到Class::CSV模块了。
内容的提问来源于stack exchange,提问作者faujong
相关产品推荐
相关产品推荐

