![Perl EPIC 無法辨識已安裝的 CPAN 模組](https://rvso.com/image/1316772/Perl%20EPIC%20%E7%84%A1%E6%B3%95%E8%BE%A8%E8%AD%98%E5%B7%B2%E5%AE%89%E8%A3%9D%E7%9A%84%20CPAN%20%E6%A8%A1%E7%B5%84.png)
Mac 上的 Eclipse 工作正常,添加新模組直到我安裝了Text::CSV_XS
Eclips 無法識別的添加到@INC
例如
use strict;
use SOAP::Transport::HTTP;
SOAP::Transport::HTTP::CGI->dispatch_to('C2FService')->handle;
BEGIN {
package C2FService;
use vars qw(@ISA);
@ISA = qw(Exporter SOAP::Server::Parameters);
use SOAP::Lite;
sub c2f {
my $self = shift;
my $envelope = pop;
my $temp = $envelope->dataof("//c2f/temperature");
return SOAP::Data->name(
'convertedTemp' => ( ( ( 9 / 5 ) * ( $temp->value ) ) + 32 ) );
}
}
use SOAP::Transport::HTTP;
如果我將其註解掉,use SOAP::Lite;
則被標記為錯誤;如果未安裝模組,則通常會被標記為錯誤、未找到等。兩者都安裝了 CPAN 和
$ perl -c soap-test.pl
post-code-check.pl syntax OK
Perl 很好,CPAN 測試全部通過,程式碼有效,只有 EPIC 落後。
$ pwd && ls
/opt/local/lib/perl5/site_perl/5.12.4/SOAP
Client.pod Lite Server.pod
Constants.pm Lite.pm Test.pm
Data.pod Packager.pm Trace.pod
Deserializer.pod SOM.pod Transport
Fault.pod Schema.pod Transport.pod
Header.pod Serializer.pod Utils.pod
如果use
我的文件開頭有錯誤,則不會對來源的其餘部分進行錯誤檢查。
答案1
我設法透過將我在系統上找到的所有路徑手動新增至專案包含路徑來解決此問題:(click in the source of your project) > Project > Properties
前往專案的根目錄並開啟文件.includepath
,並確保路徑和結束引號後沒有尾隨空格:
<includepathentry path="/opt/local/lib/perl5/vendor_perl/5.12.4 " />
我的一些條目即使我只是從終端將它們複製並貼上到 Eclipse 的 GUI 中,也不可能有尾隨空格。
在完成所有這些之後,當然可以從同一Project
選單中清理項目。
答案2
只需新增在 Eclipse Perl EPIC 中包含模組的逐步操作(有一些額外的註釋):
右鍵點選您的專案 > 屬性 > Perl 包含路徑
輸入或瀏覽您要包含的路徑
如果您的資料夾或檔案有空格,請確保將包含路徑以雙引號引起來
${project_loc}/
如前所述,預先設定您的路徑這裡即
${project_loc}"/path/to/some module"
或"${project_loc}/path/to/some module"
按一下“新增至清單”>“確定”。
重啟Eclipse