总体思路:
继承DefaultShellCallback.java,Overide 这个类里面isMergeSupported和mergeJavaFile方法,具体实现mergeJavaFile。
其中实现mergeJavaFile,需要引入javaparser相关包。
private static class MyCallBack extends DefaultShellCallback {
public MyCallBack() {
super(true);
}
@Override
public boolean isMergeSupported() {
return true;
}
@Override
public String mergeJavaFile(String newFileSource, File existingFile, String[] javadocTags, String fileEncoding)
throws ShellException{
try {
String ret = new JavaFileMerger().getNewJavaFile(newFileSource, existingFile.getPath());
return ret;
} catch (FileNotFoundException e) {
}
return null;
}
}
public static class JavaFileMerger{
public String getNewJavaFile(String newFileSource, String existingFileFullPath) throws F