Программный импорт существующего проекта в Eclipse
Я пытаюсь импортировать проект, чтобы затмить через программный. Я не хочу использовать режим пользовательского интерфейса.
Ниже приведен код, который я использовал для импорта проекта:
IProjectDescription description = ResourcesPlugin.getWorkspace().loadProjectDescription( new Path("PROJECT_PATH/.project"));
IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(description.getName());
project.create(description, null);
project.open(null);
Я получаю только папку проекта вместе с файлами .location file
, .markers.snap
и .syncinfo.snap
, но я не получаю исходную папку и т.д.
Ответы
Ответ 1
Используйте org.eclipse.ui.wizards.datatransfer.ImportOperation
Попробуйте что-то вроде этого:
IOverwriteQuery overwriteQuery = new IOverwriteQuery() {
public String queryOverwrite(String file) { return ALL; }
};
String baseDir = // location of files to import
ImportOperation importOperation = new ImportOperation(project.getFullPath(),
new File(baseDir), FileSystemStructureProvider.INSTANCE, overwriteQuery);
importOperation.setCreateContainerStructure(false);
importOperation.run(new NullProgressMonitor());
Ответ 2
Ваш код выглядит нормально. Что вы точно имеете в виду, вы не могли получить исходную папку? Вы пытались обновить проект?
project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor());
Ответ 3
Вероятно, вам не хватает строки с
description.setLocation(new Path("/absolute/path/to/project/folder"));