簡體   English   中英

Perl的@INC路徑中未包含已安裝的模塊

[英]Installed Module not contained in the Perl's @INC path

我在@INC路徑中包含Excel-Writer-XLSX模塊時​​遇到問題。 在發布此問題之前,我做了一些研究,並嘗試了幾種解決方案,但它們均失敗了。

所以我做了

$sudo perl -MCPAN -e 'install Excel::Writer::XLSX'

但是運行代碼后,我收到了此消息

--can't locate Excel/Writer/XLSX.pm in @INC(you may need to install the Excel::Writer::XLSX module) (@INC contains: /Library/Perl/5.18/darwin-thread-multi-2level/...)

這不是一個重復的問題,因為Excel :: Writer :: XLSX模塊已成功安裝在我的計算機中,不需要再次安裝。 問題是當我檢查庫文件夾時,perl5文件夾不存在,這是@INC路徑建議的。 相反,Perl5文件夾位於我的用戶文件夾中...實際上,該模塊可以在perl5文件夾內的lib文件夾中找到

我不太確定發生了什么...為什么@INC路徑顯示perl / 5.18在庫文件夾中? 如果您知道如何解決此問題,請提出建議。 非常感謝!

確保@INC包含模塊安裝路徑。 您可以通過指定

export PERL5LIB=/home/foobar/code (對於Linux)(將其添加到〜/ .bashrc中,使其在登錄時始終可用。)

set PERL5LIB = c:\\path\\to\\dir (對於Windows)


另請參閱:

#!/ usr / bin / perl之后的perl代碼的最頂部

BEGIN
{
push(@INC, '/home/penny/perlModules');
}
use my::module;
use File::Path;
...

這將允許您的代碼使用您在perlModules目錄中安裝的任何模塊。

缺點是您必須修改代碼。 或者,您可以使用上面回答的PERL5LIB環境路徑。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM