Программное добавление природы в существующий проект ⇐ JAVA

Программисты JAVA общаются здесь
Anonymous
Программное добавление природы в существующий проект

Сообщение Anonymous »

Когда я настраиваю характер текущего проекта

Код: Выделить всё

WorkspaceJob job = new WorkspaceJob("AddingNature") {

@Override
public IStatus runInWorkspace(IProgressMonitor monitor)
throws CoreException {
try {

IProjectDescription description = activeProject
.getDescription();
String[] prevNatures = description.getNatureIds();
String[] newNatures = new String[prevNatures.length + 1];
System.arraycopy(prevNatures, 0, newNatures, 0,
prevNatures.length);
newNatures[prevNatures.length] = ID;

description.setNatureIds(newNatures);
activeProject.setDescription(description,
new NullProgressMonitor());
return Status.OK_STATUS;
} catch (CoreException e) {
LOGGER.log(Level.SEVERE, WARNING_NATURE_FAIL, e.getMessage());
return Status.CANCEL_STATUS;
}
}
job.schedule()
Я получаю сообщение об ошибке
"Дерево ресурсов заблокировано для внесения изменений".
Трассировка стека исключений недоступна.
Я думал, что планирование должно избегать блокировки дерева ресурсов.
Что я могу сделать, чтобы предотвратить это? Есть ли другой способ добавить природу/конвертировать проекты

Этот код вызывается из пункта меню с использованием класса, расширяющего AbstractHandler.

Подробнее здесь: https://stackoverflow.com/questions/269 ... ng-project

Вернуться в «JAVA»