2017-02-09 15 views
0

많은 스크립트에서 다음 줄을 사용하여 동일한 모듈을 자주 가져옵니다. 한 줄에이 작업을 수행 할 수있는 방법이 있습니까? 내가 무슨 짓을모듈을 가져 오는 바로 가기?

use WWW::Mechanize; 
use WWW::TreeBuilder::XPath; 
use feature 'say'; 
+0

[내 패키지로 펄 가져 오기?] (http://stackoverflow.com/q/40953539) 및 [내 모듈로 모듈 목록을 내보내려면 어떻게해야합니까?] (http://stackoverflow.com)/q/30814892), 관련 질문의 전체 목록이 들어 있습니다. – ThisSuitIsBlackNot

+0

Ikegami와 Tanktalus의 답변에서'Import :: Into' 추천을 두 번째로 사용합니다. pragma 이외의 모듈을 가져 오는 방법과 더 많은 것을 보여주는 블로그에 대한 링크는 [this post] (http://stackoverflow.com/a/39568422/4653379)의 다른 예제를 참조하십시오. – zdim

+0

가능한 중복 [내 모듈로 모듈 목록을 내보내려면 어떻게해야합니까?] (http://stackoverflow.com/q/30814892/2173773) –

답변

4

가 자신의 모듈에 이들 모두를 넣어하는 것입니다, 단순히 use MyProject::Policy; 다음 MyProject::Policy 등을 말한다. common::sense에서 아이디어를 얻었습니다. Import::Into를 사용

, 나는 이런 식으로 뭔가를 얻을 :

package MyProject::Policy; 

use strict; 
use warnings; 

use Import::Into(); 
use WWW::Mechanize(); 
use WWW::TreeBuilder::XPath(); 

sub import { 
    my $caller = caller; 

    feature->import::into($caller, 'say'); 
    strict->import::into($caller); 
    warnings->import::into($caller); 
} 

1; 

(당신은 심지어 그들이 아무것도 내 보내지 않기 때문에 사용자가 제공 한 두 개의 모듈 가져 오기 :: 속으로 필요하지 않습니다.)

이제이 모듈 use 만 있으면되고로드해야하는 모든 모듈과 프로젝트에서 요구하는 모든 가져 오기를 가져올 수 있습니다.