Community
Participate
Working Groups
Eclipse IDE for PHP Developers 4.5.0.20150621-1200 epp.package.php null PHP Development Tools (PDT) 3.5.0.201506101710 org.eclipse.php.feature.group Eclipse PDT System is Debian Jessie 64 bit After a fresh install content assist for internal php functions is not working at all.
How did you test it? Have you php project and php file inside it? If yes have you something in logs? (ctr +3 and write error log)
There are several errors when creating a blank PHP project. I just have default PHP version set, no JS. The project contains nothing but a "newfile.php". There are no othere errors I can see. I just try to type ie. "array_ke", which should assist with ie. "array_key_exists". org.eclipse.core.internal.resources.ResourceException: The project description file (.project) for '.org.eclipse.dltk.core.external.folders' is missing. This file contains important information about the project. The project will not function properly until this file is restored. at org.eclipse.core.internal.localstore.FileSystemResourceManager.read(FileSystemResourceManager.java:888) at org.eclipse.core.internal.resources.SaveManager.restoreMetaInfo(SaveManager.java:902) at org.eclipse.core.internal.resources.SaveManager.restore(SaveManager.java:772) at org.eclipse.core.internal.resources.Project.open(Project.java:1042) at org.eclipse.core.internal.resources.Project.open(Project.java:1088) at org.eclipse.dltk.internal.core.ExternalFoldersManager.createExternalFoldersProject(ExternalFoldersManager.java:217) at org.eclipse.dltk.internal.core.ExternalFoldersManager.createLinkFolder(ExternalFoldersManager.java:122) at org.eclipse.dltk.internal.core.ExternalFolderChange.updateExternalFoldersIfNecessary(ExternalFolderChange.java:50) at org.eclipse.dltk.internal.core.ChangeBuildpathOperation.buildpathChanged(ChangeBuildpathOperation.java:71) at org.eclipse.dltk.internal.core.SetBuildpathOperation.executeOperation(SetBuildpathOperation.java:57) at org.eclipse.dltk.internal.core.ModelOperation.run(ModelOperation.java:698) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2241) at org.eclipse.dltk.internal.core.ModelOperation.runOperation(ModelOperation.java:773) at org.eclipse.dltk.internal.core.ScriptProject.setRawBuildpath(ScriptProject.java:1884) at org.eclipse.dltk.internal.core.ScriptProject.setRawBuildpath(ScriptProject.java:1870) at org.eclipse.php.internal.core.language.LanguageModelInitializer.enableLanguageModelFor(LanguageModelInitializer.java:206) at org.eclipse.php.internal.core.project.PHPNature.configure(PHPNature.java:158) at org.eclipse.core.internal.resources.NatureManager$1.run(NatureManager.java:146) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.core.internal.resources.NatureManager.configureNature(NatureManager.java:162) at org.eclipse.core.internal.resources.NatureManager.configureNatures(NatureManager.java:208) at org.eclipse.core.internal.resources.Project.basicSetDescription(Project.java:101) at org.eclipse.core.internal.resources.Project.setDescription(Project.java:1254) at org.eclipse.core.internal.resources.Project.setDescription(Project.java:1281) at org.eclipse.dltk.utils.ResourceUtil.addNature(ResourceUtil.java:38) at org.eclipse.dltk.ui.wizards.BuildpathsBlock.addScriptNature(BuildpathsBlock.java:623) at org.eclipse.php.internal.ui.wizards.PHPProjectWizardSecondPage.setScriptNature(PHPProjectWizardSecondPage.java:326) at org.eclipse.php.internal.ui.wizards.PHPProjectWizardSecondPage.configureScriptProject(PHPProjectWizardSecondPage.java:304) at org.eclipse.php.internal.ui.wizards.PHPProjectWizardSecondPage.updateProject(PHPProjectWizardSecondPage.java:232) at org.eclipse.php.internal.ui.wizards.PHPProjectWizardSecondPage$1.run(PHPProjectWizardSecondPage.java:113) at org.eclipse.ui.actions.WorkspaceModifyDelegatingOperation.execute(WorkspaceModifyDelegatingOperation.java:70) at org.eclipse.ui.actions.WorkspaceModifyOperation$1.run(WorkspaceModifyOperation.java:108) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2241) at org.eclipse.ui.actions.WorkspaceModifyOperation.run(WorkspaceModifyOperation.java:130) at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:119) org.eclipse.dltk.core.ModelException: Cannot create linked resource '/.org.eclipse.dltk.core.external.folders/.link1'. The parent resource is not accessible. at org.eclipse.dltk.core.ModelException.propagate(ModelException.java:119) at org.eclipse.dltk.internal.core.ExternalFolderChange.updateExternalFoldersIfNecessary(ExternalFolderChange.java:53) at org.eclipse.dltk.internal.core.ChangeBuildpathOperation.buildpathChanged(ChangeBuildpathOperation.java:71) at org.eclipse.dltk.internal.core.SetBuildpathOperation.executeOperation(SetBuildpathOperation.java:57) at org.eclipse.dltk.internal.core.ModelOperation.run(ModelOperation.java:698) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2241) at org.eclipse.dltk.internal.core.ModelOperation.runOperation(ModelOperation.java:773) at org.eclipse.dltk.internal.core.ScriptProject.setRawBuildpath(ScriptProject.java:1884) at org.eclipse.dltk.internal.core.ScriptProject.setRawBuildpath(ScriptProject.java:1870) at org.eclipse.php.internal.core.language.LanguageModelInitializer.enableLanguageModelFor(LanguageModelInitializer.java:206) at org.eclipse.php.internal.core.project.PHPNature.configure(PHPNature.java:158) at org.eclipse.core.internal.resources.NatureManager$1.run(NatureManager.java:146) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.core.internal.resources.NatureManager.configureNature(NatureManager.java:162) at org.eclipse.core.internal.resources.NatureManager.configureNatures(NatureManager.java:208) at org.eclipse.core.internal.resources.Project.basicSetDescription(Project.java:101) at org.eclipse.core.internal.resources.Project.setDescription(Project.java:1254) at org.eclipse.core.internal.resources.Project.setDescription(Project.java:1281) at org.eclipse.dltk.utils.ResourceUtil.addNature(ResourceUtil.java:38) at org.eclipse.dltk.ui.wizards.BuildpathsBlock.addScriptNature(BuildpathsBlock.java:623) at org.eclipse.php.internal.ui.wizards.PHPProjectWizardSecondPage.setScriptNature(PHPProjectWizardSecondPage.java:326) at org.eclipse.php.internal.ui.wizards.PHPProjectWizardSecondPage.configureScriptProject(PHPProjectWizardSecondPage.java:304) at org.eclipse.php.internal.ui.wizards.PHPProjectWizardSecondPage.updateProject(PHPProjectWizardSecondPage.java:232) at org.eclipse.php.internal.ui.wizards.PHPProjectWizardSecondPage$1.run(PHPProjectWizardSecondPage.java:113) at org.eclipse.ui.actions.WorkspaceModifyDelegatingOperation.execute(WorkspaceModifyDelegatingOperation.java:70) at org.eclipse.ui.actions.WorkspaceModifyOperation$1.run(WorkspaceModifyOperation.java:108) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2241) at org.eclipse.ui.actions.WorkspaceModifyOperation.run(WorkspaceModifyOperation.java:130) at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:119) org.eclipse.epp.internal.logging.aeri.ui.l10n.Logs$LogTraceException at org.eclipse.epp.internal.logging.aeri.ui.l10n.Logs$LogTraceException.newTrace(Logs.java:382) at org.eclipse.epp.internal.logging.aeri.ui.l10n.Logs.log(Logs.java:134) at org.eclipse.epp.internal.logging.aeri.ui.l10n.Logs.log(Logs.java:126) at org.eclipse.epp.internal.logging.aeri.ui.ReportingController.isNotificationInProgress(ReportingController.java:267) at org.eclipse.epp.internal.logging.aeri.ui.ReportingController.sendOrNotify(ReportingController.java:166) at org.eclipse.epp.internal.logging.aeri.ui.ReportingController.on(ReportingController.java:154) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:47) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:314) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) at com.google.common.eventbus.EventBus.post(EventBus.java:267) at org.eclipse.epp.internal.logging.aeri.ui.log.LogListener.logging(LogListener.java:51) at org.eclipse.core.internal.runtime.RuntimeLog.logToListeners(RuntimeLog.java:161) at org.eclipse.core.internal.runtime.PlatformLogWriter.logged(PlatformLogWriter.java:103) at org.eclipse.osgi.internal.log.ExtendedLogReaderServiceFactory.safeLogged(ExtendedLogReaderServiceFactory.java:88) at org.eclipse.osgi.internal.log.ExtendedLogReaderServiceFactory.logPrivileged(ExtendedLogReaderServiceFactory.java:217) at org.eclipse.osgi.internal.log.ExtendedLogReaderServiceFactory.log(ExtendedLogReaderServiceFactory.java:189) at org.eclipse.osgi.internal.log.ExtendedLogServiceFactory.log(ExtendedLogServiceFactory.java:65) at org.eclipse.osgi.internal.log.ExtendedLogServiceImpl.log(ExtendedLogServiceImpl.java:87) at org.eclipse.osgi.internal.log.LoggerImpl.log(LoggerImpl.java:54) at org.eclipse.core.internal.runtime.Log.log(Log.java:65) at org.eclipse.dltk.ui.DLTKUIPlugin.log(DLTKUIPlugin.java:453) at org.eclipse.dltk.ui.DLTKUIPlugin.log(DLTKUIPlugin.java:457) at org.eclipse.dltk.ui.util.ExceptionHandler.perform(ExceptionHandler.java:125) at org.eclipse.dltk.ui.util.ExceptionHandler.perform(ExceptionHandler.java:168) at org.eclipse.dltk.ui.util.ExceptionHandler.handle(ExceptionHandler.java:112) at org.eclipse.php.internal.ui.wizards.PHPProjectWizardSecondPage.changeToNewProject(PHPProjectWizardSecondPage.java:130) at org.eclipse.php.internal.ui.wizards.PHPProjectWizardSecondPage.initPage(PHPProjectWizardSecondPage.java:557) at org.eclipse.php.internal.ui.wizards.PHPProjectWizardFacetsPage.setVisible(PHPProjectWizardFacetsPage.java:174) at org.eclipse.jface.wizard.WizardDialog.updateForPage(WizardDialog.java:1231) at org.eclipse.jface.wizard.WizardDialog.access$4(WizardDialog.java:1208) at org.eclipse.jface.wizard.WizardDialog$8.run(WizardDialog.java:1197) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.jface.wizard.WizardDialog.showPage(WizardDialog.java:1194) at org.eclipse.jface.wizard.WizardDialog.nextPressed(WizardDialog.java:885) at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDialog.java:425) at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:619) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:248) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4481) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1327) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3819) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3430) at org.eclipse.jface.window.Window.runEventLoop(Window.java:827) at org.eclipse.jface.window.Window.open(Window.java:803) at org.eclipse.php.internal.ui.actions.newprojectwizard.NewProjectAction.run(NewProjectAction.java:135) at org.eclipse.jface.action.Action.runWithEvent(Action.java:473) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:595) at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:511) at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:420) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4481) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1327) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3819) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3430) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1127) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1018) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156) at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:654) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:598) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608) at org.eclipse.equinox.launcher.Main.run(Main.java:1515) at org.eclipse.equinox.launcher.Main.main(Main.java:1488) org.eclipse.core.runtime.CoreException: Problems encountered while setting project description. at org.eclipse.core.internal.resources.Project.setDescription(Project.java:1256) at org.eclipse.core.internal.resources.Project.setDescription(Project.java:1281) at org.eclipse.dltk.utils.ResourceUtil.addNature(ResourceUtil.java:38) at org.eclipse.dltk.ui.wizards.BuildpathsBlock.addScriptNature(BuildpathsBlock.java:623) at org.eclipse.php.internal.ui.wizards.PHPProjectWizardSecondPage.setScriptNature(PHPProjectWizardSecondPage.java:326) at org.eclipse.php.internal.ui.wizards.PHPProjectWizardSecondPage.configureScriptProject(PHPProjectWizardSecondPage.java:304) at org.eclipse.php.internal.ui.wizards.PHPProjectWizardSecondPage.updateProject(PHPProjectWizardSecondPage.java:232) at org.eclipse.php.internal.ui.wizards.PHPProjectWizardSecondPage$1.run(PHPProjectWizardSecondPage.java:113) at org.eclipse.ui.actions.WorkspaceModifyDelegatingOperation.execute(WorkspaceModifyDelegatingOperation.java:70) at org.eclipse.ui.actions.WorkspaceModifyOperation$1.run(WorkspaceModifyOperation.java:108) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2241) at org.eclipse.ui.actions.WorkspaceModifyOperation.run(WorkspaceModifyOperation.java:130) at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:119) Contains: Cannot create linked resource '/.org.eclipse.dltk.core.external.folders/.link1'. The parent resource is not accessible.
Moving to PDT. Can you right click on your project and select configure -> add php support?
No it is greyed out. .project has a the PHP nature: <?xml version="1.0" encoding="UTF-8"?> <projectDescription> <name>test</name> <comment></comment> <projects> </projects> <buildSpec> <buildCommand> <name>org.eclipse.wst.validation.validationbuilder</name> <arguments> </arguments> </buildCommand> <buildCommand> <name>org.eclipse.dltk.core.scriptbuilder</name> <arguments> </arguments> </buildCommand> <buildCommand> <name>org.eclipse.wst.common.project.facet.core.builder</name> <arguments> </arguments> </buildCommand> </buildSpec> <natures> <nature>org.eclipse.wst.common.project.facet.core.nature</nature> <nature>org.eclipse.php.core.PHPNature</nature> </natures> </projectDescription>
Thanks. Can you also attach .buildpath file?
There is none. But I have them in old projects from previous versions. Content assist does not work there too (for internal functions). Here is one: <?xml version="1.0" encoding="UTF-8"?> <buildpath> <buildpathentry combineaccessrules="false" kind="prj" path="/project1"/> <buildpathentry combineaccessrules="false" kind="prj" path="/project2"/> <buildpathentry combineaccessrules="false" kind="prj" path="/project3"/> <buildpathentry combineaccessrules="false" kind="prj" path="/project4"/> <buildpathentry kind="src" path=""/> </buildpath>
Just found out: in the old projects with .buildpath I can at least hover internal identifiers like "array_key_exists" or "Exception" and I get a content assist popup. In both, old and new blank project, I do not get content assist suggestions when typing in an internal function name. In the new blank project I just get "occurences of xxx" when hovering a internal function name.
Now is clear. Sometimes language container isn't properly added to buildpath. To fix that please add this entry into your .buildpath file : <buildpathentry kind="con" path="org.eclipse.php.core.LANGUAGE"/> Something is wrong with DLTK ExternalFoldersManager. Did you change General / Workspace / Linked Resources settings? Or can you check if exitsts projects inside $WORKSPACE_PATH/.metadata/.plugins/org.eclipse.dltk.core/.org.eclipse.dltk.core.external.folders ?
$WORKSPACE_PATH/.metadata/.plugins/org.eclipse.dltk.core/.org.eclipse.dltk.core.external.folders has one file ".project" with the following content: <?xml version="1.0" encoding="UTF-8"?> <projectDescription> <name>.org.eclipse.dltk.core.external.folders</name> <comment></comment> <projects> </projects> <buildSpec> </buildSpec> <natures> </natures> </projectDescription> I did not change that setting you mentioned. At least not deliberately. "Enable linked resources" is checked Both "Drag and Drop" settings say "Prompt" "Defined path variables" is an empty window
BTW. adding to .buildpath: <buildpathentry kind="con" path="org.eclipse.php.core.LANGUAGE"/> fixed the issue
*** Bug 485597 has been marked as a duplicate of this bug. ***