[ https://issues.apache.org/jira/browse/IVYDE-229?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nicolas Lalevée updated IVYDE-229: ---------------------------------- Summary: IvyDE fail on project close to trigger resolve on dependent project (was: IvyDE log errors while trying to get info on closed projects) > IvyDE fail on project close to trigger resolve on dependent project > ------------------------------------------------------------------- > > Key: IVYDE-229 > URL: https://issues.apache.org/jira/browse/IVYDE-229 > Project: IvyDE > Issue Type: Bug > Components: classpath container > Affects Versions: 2.0.0.final > Environment: we use Windows XP sp2 as operating system with RAD 7.5.4 > as software development tool > Reporter: Jonas Brisart > > Hi, > we are using RAD 7.5.4 as our development tool and work with the IVY plugin. > Now we encounter some problems. > A ticket to IBM was already been opened but after some investigating of them > they think the issue is related to the IVY plugin. > they found some related problems already here : > https://issues.apache.org/jira/browse/IVYDE-195 > http://issues.apache.org/jira/browse/IVYDE-221 > problems is as followed : > * Compile errors sometimes occur out of the blue, all of a sudden libraries > on the build path are no longer found > * In some cases, multiple cleans of the project(s) are necessary to fix the > error, sometimes RAD has to be restarted > * In the worst cases the machine had to be rebooted to fix the error > {noformat} > !ENTRY org.eclipse.core.resources 4 380 2009-11-24 08:38:57.184 > !MESSAGE The resource tree is locked for modifications. > > !ENTRY org.eclipse.core.resources 4 368 2009-11-24 08:38:57.200 > !MESSAGE Resource '/ICFWeb/src/web/wsdl/2009/09/23/ValueLists.xsd' does > not exist. > > !ENTRY org.apache.ivyde.eclipse 4 0 2009-11-24 08:42:44.855 > !MESSAGE IvyDE internal error > !STACK 1 > Java Model Exception: Java Model Status [ICFCommon does not exist] > at org.eclipse.core.runtime.CoreException.<init>(Unknown Source) > at org.eclipse.jdt.core.JavaModelException.<init>(Unknown Source) > at org.eclipse.jdt.internal.core.JavaElement.newNotPresentException(Unknown > Source) > at > org.eclipse.jdt.internal.core.JavaModelManager.getPerProjectInfoCheckExistence(Unknown > Source) > at org.eclipse.jdt.internal.core.JavaProject.getPerProjectInfo(Unknown > Source) > at org.eclipse.jdt.internal.core.JavaProject.getRawClasspath(Unknown Source) > at > org.apache.ivyde.eclipse.cpcontainer.IvyClasspathUtil.getIvyClasspathContainers(Unknown > Source) > at > org.apache.ivyde.eclipse.workspaceresolver.WorkspaceResourceChangeListener.projectClosed(Unknown > Source) > at > org.apache.ivyde.eclipse.workspaceresolver.WorkspaceResourceChangeListener.resourceChanged(Unknown > Source) > at org.eclipse.core.internal.events.NotificationManager$2.run(Unknown Source) > at org.eclipse.core.runtime.SafeRunner.run(Unknown Source) > at org.eclipse.core.internal.events.NotificationManager.notify(Unknown > Source) > at org.eclipse.core.internal.events.NotificationManager.handleEvent(Unknown > Source) > at org.eclipse.core.internal.resources.Workspace.broadcastEvent(Unknown > Source) > at > org.eclipse.core.internal.resources.Resource.broadcastPreDeleteEvent(Unknown > Source) > at org.eclipse.core.internal.resources.Resource.delete(Unknown Source) > at org.eclipse.core.internal.resources.Project.delete(Unknown Source) > at > org.eclipse.ltk.core.refactoring.resource.DeleteResourceChange.perform(Unknown > Source) > at org.eclipse.ltk.core.refactoring.CompositeChange.perform(Unknown Source) > at org.eclipse.ltk.core.refactoring.CompositeChange.perform(Unknown Source) > at org.eclipse.ltk.core.refactoring.PerformChangeOperation$1.run(Unknown > Source) > at org.eclipse.core.internal.resources.Workspace.run(Unknown Source) > at > org.eclipse.ltk.core.refactoring.PerformChangeOperation.executeChange(Unknown > Source) > at > org.eclipse.ltk.internal.ui.refactoring.UIPerformChangeOperation.access$1(Unknown > Source) > at > org.eclipse.ltk.internal.ui.refactoring.UIPerformChangeOperation$1.run(Unknown > Source) > at org.eclipse.core.runtime.SafeRunner.run(Unknown Source) > at > org.eclipse.ltk.internal.ui.refactoring.UIPerformChangeOperation$2.run(Unknown > Source) > at org.eclipse.swt.widgets.RunnableLock.run(Unknown Source) > at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Unknown Source) > at org.eclipse.swt.widgets.Display.runAsyncMessages(Unknown Source) > at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source) > at org.eclipse.jface.operation.ModalContext$ModalContextThread.block(Unknown > Source) > at org.eclipse.jface.operation.ModalContext.run(Unknown Source) > at > org.eclipse.ltk.internal.ui.refactoring.RefactoringWizardDialog2.run(Unknown > Source) > at > org.eclipse.ltk.ui.refactoring.RefactoringWizard.internalPerformFinish(Unknown > Source) > at org.eclipse.ltk.ui.refactoring.UserInputWizardPage.performFinish(Unknown > Source) > at > org.eclipse.ltk.ui.refactoring.resource.DeleteResourcesWizard$DeleteResourcesRefactoringConfigurationPage.performFinish(Unknown > Source) > at org.eclipse.ltk.ui.refactoring.RefactoringWizard.performFinish(Unknown > Source) > at > org.eclipse.ltk.internal.ui.refactoring.RefactoringWizardDialog2.okPressed(Unknown > Source) > at org.eclipse.jface.dialogs.Dialog.buttonPressed(Unknown Source) > at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Unknown Source) > at org.eclipse.swt.widgets.TypedListener.handleEvent(Unknown Source) > at org.eclipse.swt.widgets.EventTable.sendEvent(Unknown Source) > at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source) > at org.eclipse.swt.widgets.Display.runDeferredEvents(Unknown Source) > at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source) > at org.eclipse.jface.window.Window.runEventLoop(Unknown Source) > at org.eclipse.jface.window.Window.open(Unknown Source) > at > org.eclipse.ltk.ui.refactoring.RefactoringWizardOpenOperation$1.run(Unknown > Source) > at org.eclipse.swt.custom.BusyIndicator.showWhile(Unknown Source) > at org.eclipse.ltk.ui.refactoring.RefactoringWizardOpenOperation.run(Unknown > Source) > at > org.eclipse.ltk.internal.ui.refactoring.actions.DeleteResourcesHandler.execute(Unknown > Source) > at org.eclipse.ui.internal.handlers.HandlerProxy.execute(Unknown Source) > at org.eclipse.core.commands.Command.executeWithChecks(Unknown Source) > at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(Unknown > Source) > at > org.eclipse.ui.internal.handlers.HandlerService.executeCommandInContext(Unknown > Source) > at org.eclipse.ui.internal.ide.actions.LTKLauncher.runCommand(Unknown Source) > at org.eclipse.ui.internal.ide.actions.LTKLauncher.openDeleteWizard(Unknown > Source) > at org.eclipse.ui.actions.DeleteResourceAction.run(Unknown Source) > at org.eclipse.jdt.internal.ui.refactoring.reorg.DeleteAction.run(Unknown > Source) > at org.eclipse.jdt.ui.actions.SelectionDispatchAction.dispatchRun(Unknown > Source) > at org.eclipse.jdt.ui.actions.SelectionDispatchAction.run(Unknown Source) > at org.eclipse.jface.action.Action.runWithEvent(Unknown Source) > at org.eclipse.jface.commands.ActionHandler.execute(Unknown Source) > at org.eclipse.core.commands.Command.executeWithChecks(Unknown Source) > at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(Unknown > Source) > at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(Unknown > Source) > at org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand(Unknown > Source) > at org.eclipse.ui.internal.keys.WorkbenchKeyboard.press(Unknown Source) > at org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent(Unknown > Source) > at org.eclipse.ui.internal.keys.OutOfOrderListener.handleEvent(Unknown > Source) > at org.eclipse.swt.widgets.EventTable.sendEvent(Unknown Source) > at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source) > at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source) > at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source) > at org.eclipse.swt.widgets.Widget.sendKeyEvent(Unknown Source) > at org.eclipse.swt.widgets.Widget.sendKeyEvent(Unknown Source) > at org.eclipse.swt.widgets.Widget.wmKeyDown(Unknown Source) > at org.eclipse.swt.widgets.Control.WM_KEYDOWN(Unknown Source) > at org.eclipse.swt.widgets.Tree.WM_KEYDOWN(Unknown Source) > at org.eclipse.swt.widgets.Control.windowProc(Unknown Source) > at org.eclipse.swt.widgets.Tree.windowProc(Unknown Source) > at org.eclipse.swt.widgets.Display.windowProc(Unknown Source) > at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method) > at org.eclipse.swt.internal.win32.OS.DispatchMessage(Unknown Source) > at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source) > at org.eclipse.ui.internal.Workbench.runEventLoop(Unknown Source) > at org.eclipse.ui.internal.Workbench.runUI(Unknown Source) > at org.eclipse.ui.internal.Workbench.access$4(Unknown Source) > at org.eclipse.ui.internal.Workbench$5.run(Unknown Source) > at org.eclipse.core.databinding.observable.Realm.runWithDefault(Unknown > Source) > at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Unknown Source) > > at org.eclipse.ui.PlatformUI.createAndRunWorkbench(Unknown Source) > at org.eclipse.ui.internal.ide.application.IDEApplication.start(Unknown > Source) > at org.eclipse.equinox.internal.app.EclipseAppHandle.run(Unknown Source) > at > org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(Unknown > Source) > at > org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(Unknown > Source) > at org.eclipse.core.runtime.adaptor.EclipseStarter.run(Unknown Source) > at org.eclipse.core.runtime.adaptor.EclipseStarter.run(Unknown Source) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) > at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) > at java.lang.reflect.Method.invoke(Unknown Source) > at org.eclipse.equinox.launcher.Main.invokeFramework(Unknown Source) > at org.eclipse.equinox.launcher.Main.basicRun(Unknown Source) > at org.eclipse.equinox.launcher.Main.run(Unknown Source) > at org.eclipse.equinox.launcher.Main.main(Unknown Source) > !SUBENTRY 1 org.eclipse.jdt.core 4 969 2009-11-24 08:42:44.855 > !MESSAGE ICFCommon does not exist > !ENTRY org.apache.ivyde.eclipse 4 0 2009-11-24 08:42:45.776 > !MESSAGE IvyDE internal error > !STACK 1 > Java Model Exception: Java Model Status [ICFEAR does not exist] > at org.eclipse.core.runtime.CoreException.<init>(Unknown Source) > at org.eclipse.jdt.core.JavaModelException.<init>(Unknown Source) > at org.eclipse.jdt.internal.core.JavaElement.newNotPresentException(Unknown > Source) > at > org.eclipse.jdt.internal.core.JavaModelManager.getPerProjectInfoCheckExistence(Unknown > Source) > at org.eclipse.jdt.internal.core.JavaProject.getPerProjectInfo(Unknown > Source) > at org.eclipse.jdt.internal.core.JavaProject.getRawClasspath(Unknown Source) > at > org.apache.ivyde.eclipse.cpcontainer.IvyClasspathUtil.getIvyClasspathContainers(Unknown > Source) > at > org.apache.ivyde.eclipse.workspaceresolver.WorkspaceResourceChangeListener.projectClosed(Unknown > Source) > at > org.apache.ivyde.eclipse.workspaceresolver.WorkspaceResourceChangeListener.resourceChanged(Unknown > Source) > at org.eclipse.core.internal.events.NotificationManager$2.run(Unknown Source) > at org.eclipse.core.runtime.SafeRunner.run(Unknown Source) > at org.eclipse.core.internal.events.NotificationManager.notify(Unknown > Source) > at org.eclipse.core.internal.events.NotificationManager.handleEvent(Unknown > Source) > at org.eclipse.core.internal.resources.Workspace.broadcastEvent(Unknown > Source) > at > org.eclipse.core.internal.resources.Resource.broadcastPreDeleteEvent(Unknown > Source) > at org.eclipse.core.internal.resources.Resource.delete(Unknown Source) > at org.eclipse.core.internal.resources.Project.delete(Unknown Source) > at > org.eclipse.ltk.core.refactoring.resource.DeleteResourceChange.perform(Unknown > Source) > at org.eclipse.ltk.core.refactoring.CompositeChange.perform(Unknown Source) > at org.eclipse.ltk.core.refactoring.CompositeChange.perform(Unknown Source) > at org.eclipse.ltk.core.refactoring.PerformChangeOperation$1.run(Unknown > Source) > at org.eclipse.core.internal.resources.Workspace.run(Unknown Source) > at > org.eclipse.ltk.core.refactoring.PerformChangeOperation.executeChange(Unknown > Source) > at > org.eclipse.ltk.internal.ui.refactoring.UIPerformChangeOperation.access$1(Unknown > Source) > at > org.eclipse.ltk.internal.ui.refactoring.UIPerformChangeOperation$1.run(Unknown > Source) > at org.eclipse.core.runtime.SafeRunner.run(Unknown Source) > at > org.eclipse.ltk.internal.ui.refactoring.UIPerformChangeOperation$2.run(Unknown > Source) > at org.eclipse.swt.widgets.RunnableLock.run(Unknown Source) > at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Unknown Source) > at org.eclipse.swt.widgets.Display.runAsyncMessages(Unknown Source) > at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source) > at org.eclipse.jface.operation.ModalContext$ModalContextThread.block(Unknown > Source) > at org.eclipse.jface.operation.ModalContext.run(Unknown Source) > at > org.eclipse.ltk.internal.ui.refactoring.RefactoringWizardDialog2.run(Unknown > Source) > at > org.eclipse.ltk.ui.refactoring.RefactoringWizard.internalPerformFinish(Unknown > Source) > at org.eclipse.ltk.ui.refactoring.UserInputWizardPage.performFinish(Unknown > Source) > at > org.eclipse.ltk.ui.refactoring.resource.DeleteResourcesWizard$DeleteResourcesRefactoringConfigurationPage.performFinish(Unknown > Source) > at org.eclipse.ltk.ui.refactoring.RefactoringWizard.performFinish(Unknown > Source) > at > org.eclipse.ltk.internal.ui.refactoring.RefactoringWizardDialog2.okPressed(Unknown > Source) > at org.eclipse.jface.dialogs.Dialog.buttonPressed(Unknown Source) > at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Unknown Source) > at org.eclipse.swt.widgets.TypedListener.handleEvent(Unknown Source) > at org.eclipse.swt.widgets.EventTable.sendEvent(Unknown Source) > at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source) > at org.eclipse.swt.widgets.Display.runDeferredEvents(Unknown Source) > at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source) > at org.eclipse.jface.window.Window.runEventLoop(Unknown Source) > at org.eclipse.jface.window.Window.open(Unknown Source) > at > org.eclipse.ltk.ui.refactoring.RefactoringWizardOpenOperation$1.run(Unknown > Source) > at org.eclipse.swt.custom.BusyIndicator.showWhile(Unknown Source) > at org.eclipse.ltk.ui.refactoring.RefactoringWizardOpenOperation.run(Unknown > Source) > at > org.eclipse.ltk.internal.ui.refactoring.actions.DeleteResourcesHandler.execute(Unknown > Source) > at org.eclipse.ui.internal.handlers.HandlerProxy.execute(Unknown Source) > at org.eclipse.core.commands.Command.executeWithChecks(Unknown Source) > at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(Unknown > Source) > at > org.eclipse.ui.internal.handlers.HandlerService.executeCommandInContext(Unknown > Source) > at org.eclipse.ui.internal.ide.actions.LTKLauncher.runCommand(Unknown Source) > at org.eclipse.ui.internal.ide.actions.LTKLauncher.openDeleteWizard(Unknown > Source) > at org.eclipse.ui.actions.DeleteResourceAction.run(Unknown Source) > at org.eclipse.jdt.internal.ui.refactoring.reorg.DeleteAction.run(Unknown > Source) > at org.eclipse.jdt.ui.actions.SelectionDispatchAction.dispatchRun(Unknown > Source) > at org.eclipse.jdt.ui.actions.SelectionDispatchAction.run(Unknown Source) > at org.eclipse.jface.action.Action.runWithEvent(Unknown Source) > at org.eclipse.jface.commands.ActionHandler.execute(Unknown Source) > at org.eclipse.core.commands.Command.executeWithChecks(Unknown Source) > at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(Unknown > Source) > at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(Unknown > Source) > at org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand(Unknown > Source) > at org.eclipse.ui.internal.keys.WorkbenchKeyboard.press(Unknown Source) > at org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent(Unknown > Source) > at org.eclipse.ui.internal.keys.OutOfOrderListener.handleEvent(Unknown > Source) > at org.eclipse.swt.widgets.EventTable.sendEvent(Unknown Source) > at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source) > at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source) > at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source) > at org.eclipse.swt.widgets.Widget.sendKeyEvent(Unknown Source) > at org.eclipse.swt.widgets.Widget.sendKeyEvent(Unknown Source) > at org.eclipse.swt.widgets.Widget.wmKeyDown(Unknown Source) > at org.eclipse.swt.widgets.Control.WM_KEYDOWN(Unknown Source) > at org.eclipse.swt.widgets.Tree.WM_KEYDOWN(Unknown Source) > at org.eclipse.swt.widgets.Control.windowProc(Unknown Source) > at org.eclipse.swt.widgets.Tree.windowProc(Unknown Source) > at org.eclipse.swt.widgets.Display.windowProc(Unknown Source) > at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method) > at org.eclipse.swt.internal.win32.OS.DispatchMessage(Unknown Source) > at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source) > at org.eclipse.ui.internal.Workbench.runEventLoop(Unknown Source) > at org.eclipse.ui.internal.Workbench.runUI(Unknown Source) > at org.eclipse.ui.internal.Workbench.access$4(Unknown Source) > at org.eclipse.ui.internal.Workbench$5.run(Unknown Source) > at org.eclipse.core.databinding.observable.Realm.runWithDefault(Unknown > Source) > at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Unknown Source) > at org.eclipse.ui.PlatformUI.createAndRunWorkbench(Unknown Source) > at org.eclipse.ui.internal.ide.application.IDEApplication.start(Unknown > Source) > at org.eclipse.equinox.internal.app.EclipseAppHandle.run(Unknown Source) > at > org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(Unknown > Source) > at > org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(Unknown > Source) > at org.eclipse.core.runtime.adaptor.EclipseStarter.run(Unknown Source) > at org.eclipse.core.runtime.adaptor.EclipseStarter.run(Unknown Source) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > {noformat} > this is what the IBM team answers : > I am afraid this is pretty standard mistake in all projects that try to > manipulate with Eclipse resources. > > 3rd party plug-in (apache Ivy) listens to workspace changes. When a > project is closed (or deleted) it tries to process those changes, and > tries to read projects info, which is impossible because the project is > closed (or deleted). > Ivy is responsible for managing classpath. It uses JDT API to set > libraries and jars etc. If the exception happens, the workbench is left > in unpredictable state. > > Can somebody help us out with this problem > thank you -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.