Problems opening php files in Eclipse
Asked Answered
B

4

8

I've just set up PDT in eclipse (Galileo), but get the error below when opening any .php file.

Does anyone know how I can fix this?

Thanks in advance

TAO.

PHP FILE:

<?php
echo "test"
?>

ERROR:

Could not open the editor: Editor could not be initialized.

Details:

java.lang.AbstractMethodError: org.eclipse.php.internal.core.compiler.ast.parser.PHPSourceParserFactory.parse(Lorg/eclipse/dltk/compiler/env/IModuleSource;Lorg/eclipse/dltk/compiler/problem/IProblemReporter;)Lorg/eclipse/dltk/ast/parser/IModuleDeclaration;
    at org.eclipse.dltk.core.SourceParserUtil.parse(SourceParserUtil.java:137)
    at org.eclipse.dltk.core.SourceParserUtil.getModuleDeclaration(SourceParserUtil.java:197)
    at org.eclipse.dltk.core.SourceParserUtil.getModuleDeclaration(SourceParserUtil.java:183)
    at org.eclipse.dltk.core.SourceParserUtil.getModuleDeclaration(SourceParserUtil.java:174)
    at org.eclipse.dltk.core.AbstractSourceElementParser.parse(AbstractSourceElementParser.java:42)
    at org.eclipse.dltk.core.AbstractSourceElementParser.parseSourceModule(AbstractSourceElementParser.java:26)
    at org.eclipse.dltk.internal.core.AbstractSourceModule.buildStructure(AbstractSourceModule.java:507)
    at org.eclipse.dltk.internal.core.Openable.generateInfos(Openable.java:185)
    at org.eclipse.dltk.internal.core.ModelElement.openWhenClosed(ModelElement.java:182)
    at org.eclipse.dltk.internal.core.BecomeWorkingCopyOperation.executeOperation(BecomeWorkingCopyOperation.java:45)
    at org.eclipse.dltk.internal.core.ModelOperation.run(ModelOperation.java:698)
    at org.eclipse.dltk.internal.core.ModelOperation.runOperation(ModelOperation.java:764)
    at org.eclipse.dltk.internal.core.SourceModule.becomeWorkingCopy(SourceModule.java:68)
    at org.eclipse.dltk.internal.ui.editor.SourceModuleDocumentProvider.createFileInfo(SourceModuleDocumentProvider.java:1251)
    at org.eclipse.ui.editors.text.TextFileDocumentProvider.connect(TextFileDocumentProvider.java:478)
    at org.eclipse.dltk.internal.ui.editor.SourceModuleDocumentProvider.connect(SourceModuleDocumentProvider.java:1484)
    at org.eclipse.ui.texteditor.AbstractTextEditor.doSetInput(AbstractTextEditor.java:4134)
    at org.eclipse.ui.texteditor.StatusTextEditor.doSetInput(StatusTextEditor.java:203)
    at org.eclipse.ui.texteditor.AbstractDecoratedTextEditor.doSetInput(AbstractDecoratedTextEditor.java:1413)
    at org.eclipse.ui.editors.text.TextEditor.doSetInput(TextEditor.java:166)
    at org.eclipse.wst.sse.ui.StructuredTextEditor.doSetInput(StructuredTextEditor.java:1712)
    at org.eclipse.php.internal.ui.editor.PHPStructuredEditor.doSetInput(PHPStructuredEditor.java:2208)
    at org.eclipse.ui.texteditor.AbstractTextEditor$19.run(AbstractTextEditor.java:3115)
    at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:464)
    at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:372)
    at org.eclipse.jface.window.ApplicationWindow$1.run(ApplicationWindow.java:759)
    at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    at org.eclipse.jface.window.ApplicationWindow.run(ApplicationWindow.java:756)
    at org.eclipse.ui.internal.WorkbenchWindow.run(WorkbenchWindow.java:2579)
    at org.eclipse.ui.texteditor.AbstractTextEditor.internalInit(AbstractTextEditor.java:3133)
    at org.eclipse.ui.texteditor.AbstractTextEditor.init(AbstractTextEditor.java:3160)
    at org.eclipse.wst.sse.ui.StructuredTextEditor.init(StructuredTextEditor.java:2321)
    at org.eclipse.php.internal.ui.editor.PHPStructuredEditor.init(PHPStructuredEditor.java:1151)
    at org.eclipse.ui.internal.EditorManager.createSite(EditorManager.java:798)
    at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:644)
    at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:462)
    at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:595)
    at org.eclipse.ui.internal.PartPane.setVisible(PartPane.java:313)
    at org.eclipse.ui.internal.presentations.PresentablePart.setVisible(PresentablePart.java:180)
    at org.eclipse.ui.internal.presentations.util.PresentablePartFolder.select(PresentablePartFolder.java:270)
    at org.eclipse.ui.internal.presentations.util.LeftToRightTabOrder.select(LeftToRightTabOrder.java:65)
    at org.eclipse.ui.internal.presentations.util.TabbedStackPresentation.selectPart(TabbedStackPresentation.java:473)
    at org.eclipse.ui.internal.PartStack.refreshPresentationSelection(PartStack.java:1256)
    at org.eclipse.ui.internal.PartStack.setSelection(PartStack.java:1209)
    at org.eclipse.ui.internal.PartStack.showPart(PartStack.java:1608)
    at org.eclipse.ui.internal.PartStack.add(PartStack.java:499)
    at org.eclipse.ui.internal.EditorStack.add(EditorStack.java:103)
    at org.eclipse.ui.internal.PartStack.add(PartStack.java:485)
    at org.eclipse.ui.internal.EditorStack.add(EditorStack.java:112)
    at org.eclipse.ui.internal.EditorSashContainer.addEditor(EditorSashContainer.java:63)
    at org.eclipse.ui.internal.EditorAreaHelper.addToLayout(EditorAreaHelper.java:225)
    at org.eclipse.ui.internal.EditorAreaHelper.addEditor(EditorAreaHelper.java:213)
    at org.eclipse.ui.internal.EditorManager.createEditorTab(EditorManager.java:778)
    at org.eclipse.ui.internal.EditorManager.openEditorFromDescriptor(EditorManager.java:677)
    at org.eclipse.ui.internal.EditorManager.openEditor(EditorManager.java:638)
    at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2854)
    at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2762)
    at org.eclipse.ui.internal.WorkbenchPage.access$11(WorkbenchPage.java:2754)
    at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2705)
    at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2701)
    at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2685)
    at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2676)
    at org.eclipse.dltk.internal.ui.editor.EditorUtility.openInEditor(EditorUtility.java:405)
    at org.eclipse.dltk.internal.ui.editor.EditorUtility.openInEditor(EditorUtility.java:166)
    at org.eclipse.dltk.internal.ui.actions.OpenActionUtil.open(OpenActionUtil.java:45)
    at org.eclipse.dltk.ui.actions.OpenAction.run(OpenAction.java:259)
    at org.eclipse.dltk.ui.actions.OpenAction.run(OpenAction.java:240)
    at org.eclipse.dltk.ui.actions.SelectionDispatchAction.dispatchRun(SelectionDispatchAction.java:259)
    at org.eclipse.dltk.ui.actions.SelectionDispatchAction.run(SelectionDispatchAction.java:235)
    at org.eclipse.dltk.internal.ui.scriptview.ScriptExplorerActionGroup.handleOpen(ScriptExplorerActionGroup.java:304)
    at org.eclipse.php.internal.ui.explorer.PHPExplorerActionGroup.handleOpen(PHPExplorerActionGroup.java:103)
    at org.eclipse.dltk.internal.ui.scriptview.ScriptExplorerPart$4.open(ScriptExplorerPart.java:667)
    at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:842)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.core.runtime.Platform.run(Platform.java:888)
    at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
    at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
    at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:840)
    at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1101)
    at org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(StructuredViewer.java:1205)
    at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:264)
    at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:258)
    at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:298)
    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:3880)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3473)
    at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405)
    at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369)
    at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2221)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493)
    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:194)
    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:368)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
    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(Main.java:559)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
Beaune answered 14/2, 2010 at 21:3 Comment(1)
Exact version of Eclipse? PDT? How exactly it was installed?Forint
D
9

I've had the same problem too when upgrading DLTK to 2.0 M5.

Switching back to M4 seems to have solved the problem for me:

  1. Download the DLTK 2.0 M4 plugin archive:
    http://download.eclipse.org/technology/dltk/downloads/drops/R2.0/S-2.0M4-200912141114/
    (Core Frameworks line)
  2. Extract the zip archive
  3. Locate your eclipse plugin directory (on my Ubuntu, in /.eclipse/org.eclipse.platform_3.5.0_155965261/plugins).
  4. Make sure eclipse is closed. Erase or rename the faulty jar file:

    $ mv org.eclipse.dltk.core_2.0.0.v20100212-1450.jar org.eclipse.dltk.core_2.0.0.v20100212-1450.jar.bak

  5. copy org.eclipse.dltk.core_2.0.0.v20100201-1709.jar from the archive version to your plugin directory.
  6. rename the copied file to the M5 version one:

    $ mv org.eclipse.dltk.core_2.0.0.v20100201-1709.jar org.eclipse.dltk.core_2.0.0.v20100212-1450.jar

Hope it helps.

Deron answered 15/2, 2010 at 12:0 Comment(2)
Fantastic ! Solved my problem and saved me from a starting Headache ! You totally rock !Laws
This solution gives me tons of warning popups when I either open a new php tab or save it ... Is it normal ? (Am I gonna die* ?) *I mean soon ...Laws
B
4

For those of you coming to this older post, I just wanted to let you know that there is another option that brings the PHP intelligence of VS Code to Eclipse Neon and later. It's a plug-in called CodeMix and provides support for PHP in addition to many other dynamic languages through the many available extensions. You can find out more about it on the CodeMix page, or install it into Eclipse directly from the Eclipse marketplace.

Bank answered 13/4, 2018 at 14:47 Comment(0)
D
3

Sadly, following the latest updates to the DLTK, Benoit's recipe no longer works for me. However, downloading the nightly build of PDT did. Here's what you do:

Download the nightly PDP build: N201003021518/pdt-Update-N201003021518.zip

(by the time you follow this recipe, the latest stable build might have moved on, so check under https://build.eclipse.org/hudson/view/Athena%20CBI/job/cbi-pdt-2.2-helios/lastStableBuild/ - expand the "Build Artifacts" link until you find the zip file.)

Create a local update site: mkdir /tmp/eclipse cd /tmp/eclipse_pdt unzip ~/Downloads/pdt-Update-N201003021518.zip

In Eclipse, select Help -> Install New Software -> Work With: Add -> Local… -> /tmp/eclipse_pdt (Click OK and give it a name such as "PDT Nightly Build") In the main window, select the features you want to install (I selected all but PDT Mylyn Feature) Next Finish When asked whether to accept “unsigned” content, say OK. Restart Eclipse when prompted.

Diplomate answered 3/3, 2010 at 12:8 Comment(2)
Thank you - hoping this will work. Giving it a shot now. I'll come back with an update if it works or not. I'll vote for this answer if it works.Shew
-- update: This solution worked nicely. Thank you for posting.Shew
I
0

I had the same problem. I started of by downloading "Eclipse Classic 3.5.2", deciding it was time to bid farewell to 3.3. The first plugin I installed was the PDT 2.1, which left me wading through a series of errors, including:

  • "Editor could not be initialized"
  • "Semantic Highlighting Job"
  • "Processing Dirty Regions"

Benoit's jar fix sorted out the editer initilisation problem, but I was still left hunting for fixes for the other errors. In the end I decided to back out the upgrade by simply deleting the 3.5.2 folder (thank you Eclipse developers for not filling my registry with junk), and downloaded the "Eclipse for PHP Developers" package, as it includes PDT. So far everything appears to be working.

Instauration answered 28/2, 2010 at 22:49 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.