2016-09-01 7 views
0

inria-spoon 라이브러리를 사용하여 소스 코드 변환을 작성했습니다.수정되지 않은 파일도 inria 스푼 변환 대상 디렉토리에 복사했습니다.

public boolean isToBeProcessed(CtInterface<?> ctClass) { 
     return isProcessible(ctClass); 
    } 

그래서만을 원하는 클래스가 변환됩니다 : 나는 (내 "프로세스"기능은 원하는 클래스에 대해서만 호출되어 있는지 확인합니다) 내 변압기에서 다음과 같은 기능을 가지고있다. 그러나 모든 클래스가 원본 디렉터리에서 대상 디렉터리로 복사 된 것으로 보입니다. 변환 된 클래스 만 대상 디렉토리에 복사 할 것으로 기대합니다.

inria-spoon에서 이에 대한 구성 또는 처리가 있습니까?

가 현재 나는 다음과 같은 기능을 사용하여, JUnit 테스트 케이스를 통해 내 변압기를 호출하고 다음 API로도 사용할 수

public void testTransform() 
    { 
     final String[] arguments = { "-i", "E:/input", 
       "-o", "E:/output", "-p", 
       "com.transformer.ClassTransformer", 
       "-c"}; 

     final Launcher launcher = new Launcher(); 
     launcher.setArgs(arguments); 
     launcher.run(); 
    } 

답변

0

옵션 [(-f|--generate-files) <generate-files>], 당신이 원하는 것 같다.

+0

thanks @ martin-monperrus ....하지만이 옵션을 사용하면 수정할 파일 목록을 제공 할 수 있습니다. 그것은 나를 위해 작동하지 않습니다. – sanjay

+0

와일드 카드를 사용할 수도 있습니다. –