1
我想从另一个Java项目创建一个Java项目,使用Eclipse库中的一些脚本或Java方法(无论它是否存在)。此替代可以复制以前手动创建的项目。有没有办法呢?从另一个项目创建一个Eclipse Java项目,编程式
谢谢。
我想从另一个Java项目创建一个Java项目,使用Eclipse库中的一些脚本或Java方法(无论它是否存在)。此替代可以复制以前手动创建的项目。有没有办法呢?从另一个项目创建一个Eclipse Java项目,编程式
谢谢。
我相信你可以利用IProject#copy
(从IResource.copy继承)
添加到亚历山大·巴甫洛夫的答案,我发现一些额外的工作需要,除了复制的项目属性(如引用的项目)只是复制项目文件。
public static IProject copyProject(String projectName) throws CoreException {
IProgressMonitor m = new NullProgressMonitor();
IWorkspaceRoot workspaceRoot = ResourcesPlugin.getWorkspace().getRoot();
IProject project = workspaceRoot.getProject(projectName);
IProjectDescription projectDescription = project.getDescription();
String cloneName = projectName + "_copy";
// create clone project in workspace
IProjectDescription cloneDescription = workspaceRoot.getWorkspace().newProjectDescription(cloneName);
// copy project files
project.copy(cloneDescription, true, m);
IProject clone = workspaceRoot.getProject(cloneName);
// copy the project properties
cloneDescription.setNatureIds(projectDescription.getNatureIds());
cloneDescription.setReferencedProjects(projectDescription.getReferencedProjects());
cloneDescription.setDynamicReferences(projectDescription.getDynamicReferences());
cloneDescription.setBuildSpec(projectDescription.getBuildSpec());
cloneDescription.setReferencedProjects(projectDescription.getReferencedProjects());
clone.setDescription(cloneDescription, null);
return clone;
}
您需要以编程方式或手动执行此操作吗? – Th0rndike 2012-04-19 15:32:28
类似的问题http://stackoverflow.com/q/251807/858356 – cyberbemon 2012-04-19 15:34:03
我想以编程方式做到这一点。 – 2012-04-20 10:34:53