Моя конечная цель - создать плагин eclipse, который устанавливает проект PDT, но с некоторыми добавленными сборщиками (и скриптами пользовательской сборки), а также с конкретным расположением папок (и разные папки должны рассматриваться как источник, а некоторые - как обычные папки).Как создать настраиваемый макет проекта на основе другого плагина eclipse?
Я просмотрел/заработал учебник по разработке плагина eclipse и хорошо. Я получаю суть создания мастера, который создает файл, но у меня возникли проблемы с попыткой выяснить, как создать проект, и, что более важно, сделать этот проект связан с функцией PDT (PHP Development Tools).
Ответ:
Я наткнуться на решение сам до того, как был дан ответ, но это очень похоже.
Во-первых, WizardNewProjectCreationPage
использовался как первая страница моего волшебника.
Во-вторых, на performFinish()
я побежал следующий код:
IProgressMonitor m = new NullProgressMonitor();
IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
IProject project = root.getProject(_pageOne.getProjectName());
if (!project.exists())
{
IProjectDescription desc = project.getWorkspace().newProjectDescription(project.getName());
URI projectLocation = _pageOne.getLocationURI();
// desc.setLocationURI(projectLocation);
String[] natures = desc.getNatureIds();
String[] newNatures = new String[natures.length + 1];
System.arraycopy(natures, 0, newNatures, 0, natures.length);
newNatures[natures.length] = PHPNature.ID;
desc.setNatureIds(newNatures);
project.create(desc, m);
project.open(m);
}
Благодарим вас за ответ. Я отредактировал свой вопрос, чтобы показать, что я сделал, чтобы выполнить то, что я хотел. Я наткнулся на него сам и почти идентичен тому, что вы описываете. Я просто не знал, как работает природа;) –