최근 내 시스템에서 -T
을 실행할 때 require 'lib/file.pl'
을 실행할 수 없다는 것을 알았지 만 require './lib/file.pl'
이 작동합니다.-T에서 실행될 때 Perl이 특정 파일을 필요로하지 않으려하는 이유는 무엇입니까?
$ perl -wT -e 'require "lib/file.pl";'
Can't locate lib/file.pl in @INC (@INC contains: /usr/lib/perl5/site_perl/5.14.2/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.14.2 /usr/lib/perl5/vendor_perl/5.14.2/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.14.2 /usr/lib/perl5/5.14.2/x86_64-linux-thread-multi /usr/lib/perl5/5.14.2 /usr/lib/perl5/site_perl/5.14.2/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.14.2 /usr/lib/perl5/site_perl)
$ perl -wT -e 'require "lib/file.pl"'
두 가지 방법으로 -T
작동하지 않고 그 일 : $ 펄 -w -e ' "lib 디렉토리/file.pl"을 요구하는' $ 펄 -w -e ' "./lib/file.pl을 필요로 " '
오염 모드에서 .
은 @INC
의 일부가 아닙니다.
perl -w -e 'print "@INC"'
[..snip..] /usr/lib/perl5/site_perl/5.14.2 /usr/lib/perl5/site_perl .
perl -wT -e 'print "@INC"'
[..snip..] /usr/lib/perl5/site_perl/5.14.2 /usr/lib/perl5/site_perl
문서에서 해당 동작을 찾을 수 없습니다. 누군가가 이것이 문서화 된 곳 또는 lib 디렉토리로 -T
이 .
을 좋아하지 않는 이유를 말해 줄 수 있습니까?
나는 그것을 보지 못했다. 지금 당장 필자는 Programming Perl *을 읽고 있지만 아직 그 부분을 찾지 못했다. **고맙습니다!** – simbabque