根据 JDTBasedSpoonCompiler 的代码片段,编译单元不考虑输出类型过滤器。
@Override
public void generateProcessedSourceFiles(OutputType outputType, Filter<CtType<?>> typeFilter) {
getEnvironment().getSpoonProgress().start(SpoonProgress.Process.PRINT);
switch (outputType) {
case CLASSES:
generateProcessedSourceFilesUsingTypes(typeFilter);
break;
case COMPILATION_UNITS:
generateProcessedSourceFilesUsingCUs();
break;
case NO_OUTPUT:
}
getEnvironment().getSpoonProgress().end(SpoonProgress.Process.PRINT);
}
对于狙击模式打印,输出类型在内部配置为编译单元。我正在使用带有 Maven Launcher 的 Maven 项目,并且只对将修改后的编译单元输出到输出文件夹感兴趣。目前,所有输入文件也都填充在输出文件夹中,这是不正确的。
有什么方法可以实现过滤器?