2010-01-29 3 views
1

Я использовал следующий код, чтобы получить IJavaProject типа из строки:Как открыть проект Java в плагине Eclipse?

IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(projectName); 
IJavaProject javaProject = JavaCore.create(project); 

После этого я использовал javaProject.open(monitor); где монитор имеет тип IProgreeMonitor, чтобы открыть проект ... Я не могу открыть filr там это некоторая проблема с ним. Показанное исключение:

 
Java Model Exception: Java Model Status [com.ibm.plugin does not exist] 
at org.eclipse.jdt.internal.core.JavaElement.newJavaModelException(JavaElement.java:501) 
at org.eclipse.jdt.internal.core.Openable.generateInfos(Openable.java:245) 
at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:514) 
at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:251) 
at org.eclipse.jdt.internal.core.Openable.open(Openable.java:431) 
at packagesearch.HelloWorldAction.run(HelloWorldAction.java:49) 
at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:251) 
at org.eclipse.ui.internal.WWinPluginAction.runWithEvent(WWinPluginAction.java:229) 
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:583) 
at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:500) 
at org.eclipse.jface.action.ActionContributionItem$6.handleEvent(ActionContributionItem.java:452) 
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) 
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003) 
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3823) 
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3422) 
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2384) 
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2348) 
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2200) 
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:495) 
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:288) 
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:490) 
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) 
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113) 
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:193) 
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) 
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) 
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:386) 
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) 
at java.lang.reflect.Method.invoke(Method.java:599) 
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549) 
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504) 
at org.eclipse.equinox.launcher.Main.run(Main.java:1236) 
at org.eclipse.equinox.launcher.Main.main(Main.java:1212) 

ответ

3

Как указано в my previous answer, вашего проекта не существует, что означает, что вы пытаетесь открыть 'null'.

Отсюда исключение.

+0

благодарит за ответ – Steven

0

Предполагаете, вы имеете в виду IProgressMonitor.

IProgressMonitor предназначен для получения обновлений по выполнению задачи, которая выполняется параллельно (т. Е. Как близко к ее завершению), а не для открытия ресурсов.

Я надеюсь, что это объяснит ошибку, но, боюсь, я не знаю, как открыть проект.

Смежные вопросы