之前做rcp的时候需要扩展eclipse的rename功能,英文他自身rename功能,只能修改工程的名字和.project里的名字。项目的需求要同时修改包下相应文件的名字(该文件和项目名一致)。
淡然,完全可以两次rename实现,但客户不愿意这样,不得己研究了rename源码,最终实现了。
代码如下。
public void reNameServerPackage(IProject project,String newFoldername) {
IProject myWebProject = projectBean.getProject();
IFolder newFolder = myWebProject.getFolder(Constant.SERVER_PACKAGE+projectBean.getName());
RenameResourceProcessor processor = new RenameResourceProcessor(newFolder);
processor.setNewResourceName(newFoldername);
try {
Change change = processor.createChange(new NullProgressMonitor());
change.perform(new NullProgressMonitor());
} catch (CoreException e1) {
e1.printStackTrace();
}
}
当然,上面的代码是不能独立运行的,它离开相应的环境,做过rcp开发的同志们,应该很清楚IProject代表的具体含义。
这里标记下,说不定还有人会用到这个功能的。