Eclipse 自动完成功能不适用于 PHP 项目
Posted
技术标签:
【中文标题】Eclipse 自动完成功能不适用于 PHP 项目【英文标题】:Eclipse autocomplete is not working for PHP-project 【发布时间】:2012-01-24 09:18:34 【问题描述】:我的 Eclipse 不使用自动完成功能...我的同事只需输入一些字母就可以得到完整的建议列表,但我什么也得不到...
我使用的Eclipse版本是:
Eclipse for php Developers
Version: Helios Service Release 2
Build id: 20110301-1815
(c) Copyright Eclipse contributors and others 2000, 2011. All rights reserved.
Visit http://eclipse.org/
我想我已经为自动完成设置了所有可用的设置。 每次我必须搜索正确的命名时,我都会浪费大量时间。是否有任何软件模块我必须额外安装才能获得此自动完成功能?
【问题讨论】:
只有你自己的函数等没有自动完成,还是原生的 PHP 也没有? 请看How to enable autocomplete/syntax-highlight for PHP core functions in Eclipse?。 @Narcissus,原生 PHP 函数也... @hakre,感谢您的链接。我会检查的! 【参考方案1】:好的,找到了解决方案!显然我必须在项目的属性窗口中“添加 PHP 支持”。感谢所有的帮助!
【讨论】:
这里只是一点点补充:启用 PHP 支持后我必须Build Project
。感谢您解决这个问题,重新安装后它一直困扰着我(呵呵)数周。
就我而言,对我有用的是Enable Zend Framework Support
。我的下拉菜单中没有Add PHP Support
我说“转换为 PHP 项目”,但是是的,这是唯一对我有用的东西。【参考方案2】:
通常,这可以通过启用 Content Assist 来激活。它可以在 Window-Preference->PHP->Editor->Content Assist
上找到-
设置您的
php_include_path
。转到项目的属性。然后PHP 包含路径。
如果您有任何外部库也将其添加到那里(我使用 Zend 和 Kohana)。
【讨论】:
右键单击您的项目并单击属性。在左侧窗格中,您应该看到 PHP 包含路径。看到这张图片。 tinypic.com/r/9kmtd1/5 感谢您的努力,但我的属性中没有这样的链接...不过我找到了解决方案!【参考方案3】:我通过删除主工作区上的“.metadata”目录来做到这一点:D
【讨论】:
【参考方案4】:我可以尝试所有答案(来自这个和其他线程),只为我工作删除(或重命名备份).metadata
工作区文件夹上的文件夹
-
关闭日食
mv .metadata .metadata_older
启动 eclipse(干净启动 eclipse 的工作空间,没有列出任何项目)
从工作区导入您的项目
Eclipse 重建和刷新工作(丢失了几个项目设置!!!)
自动补全、跟随代码等现在可以工作了。
这不是理想的解决方案,但对我来说是唯一的解决方案,我一步从 eclipse 3.6 迁移到 4.4,并且 PHP 支持消失了,只有突出显示代码有效,直到删除 .metadata
文件夹。
Ubuntu 12.04 LTS 64 Java 1.7 ORACLE
谢谢。
【讨论】:
【参考方案5】:检查 Windows 首选项中的选项以获取内容帮助。它可能被禁用。它可能是 php -> Editor -> Content Assist 并查看选择了哪些自动激活。
【讨论】:
是的,它已启用(2ms 后)并且选项设置在Completion Inserts
【参考方案6】:
我不使用 Eclipse,但我知道在 Netbeans(和其他 IDE)中,您可以在启动后键入 Ctrl + Space 来调出自动完成窗口键入函数/变量。
试试看。
【讨论】:
更改 IDE 不是解决方案,OP 也没有要求这样做。而且它也可以在Eclipse中完成。 @Shiplu:您应该更正确地阅读答案,这不是建议切换 IDE,而是尝试使用常用的键盘快捷键。很好,在 PDT 中也是如此。 @hakre 哎呀!我的错。很抱歉。【参考方案7】:如果这种情况仅发生在 Eclipse 中的一个项目并且其他项目正确自动完成,则有时会在您创建新的 PHP 项目并在第一页上按 Finish
时发生。
要修复它,请从 Eclipse 中删除项目(Windows > Show view > Navigator
并在项目上按 DELETE
)。然后转到项目文件夹并删除文件.project
和文件夹.setting
。
现在在 Eclipse 中选择 File > New > PHP project
,选择名称和文件夹,按 Next
并验证(或手动添加)项目的根文件夹在 Source
选项卡上监听。
然后点击Next
并将项目的根文件夹或包含PHP文件的文件夹添加到Build path
。现在你可以点击Finish
。
注意:在现有项目中添加Source
和Build
路径通常不能解决此问题,您必须删除并创建新项目。
【讨论】:
【参考方案8】:项目右键->属性->PHP->验证
检查启用 prockect 特定设置
选择 PHP 版本
【讨论】:
【参考方案9】:检查您的 .buildpath,尝试构建如下内容:
<?xml version="1.0" encoding="UTF-8"?>
<buildpath>
<buildpathentry kind="con" path="org.eclipse.php.core.LANGUAGE"/>
<buildpathentry kind="src" path="src"/>
<buildpathentry kind="src" path="vendor"/>
<buildpathentry external="true" kind="lib" path="common-libs/vendor/project-sample/lib"/>
</buildpath>
【讨论】:
这仍然是个问题吗?我正在尝试弄清楚这种情况何时发生,但我无法重现 :( 如果您使用的是 Linux,请尝试将 path="common-libs/vendor/project-sample/lib" 更改为 path="C:\common-libs\vendor\project-sample\lib" ,然后打开你的Eclipse。您将重现该问题。以上是关于Eclipse 自动完成功能不适用于 PHP 项目的主要内容,如果未能解决你的问题,请参考以下文章
XCode自动完成不适用于Objective C中的特定项目