【问题标题】:Netbeans 7.2 autocomplete for namespace class命名空间类的 Netbeans 7.2 自动完成
【发布时间】:2013-01-18 11:23:14
【问题描述】:

编辑:已报告、接受并修补了错误 http://netbeans.org/bugzilla/show_bug.cgi?id=225062

自从一两天后,我的 Netbeans IDE 停止提示类参数,并且自动完成对命名空间类不起作用,我只是想知道我可能做了什么来破坏自动完成/提示 - 或者这是一个已知的错误。这在使用 Netbeans 7.2 以及 Netbeans 7.3 beta 2 的 Ubuntu 12.10 和 Windows 7 上重现。

如果它是一个已知的错误,这会很奇怪,因为我几乎可以肯定它在几天前工作。

情景;
HostNameRoute 类存在于 Router\Route 命名空间中,构造函数有两个参数 $route$action

namespace Router\Route;
class HostNameRoute {}

我以前可以从根命名空间通过键入获得提示和自动完成:

new HostNam[Ctrl+Space]  ::  Suggests HostNameRoute($route, $action)  :: [Enter]

Would produce
new \Router\Route\HostNameRoute(<$route>, <$action>);

但现在 IDE 只提示限定名称,但不显示参数文档,也不自动完成。然而,它确实在类名上生成了一个静态的奇怪框(非交互式)。

但是,提示和自动补全仍然适用于根命名空间中的类:

new Te[Ctrl+Space]  :: Suggests Test($arg) :: [Enter]

Produces
new Test(<$arg>);

适用于根命名空间


不适用于命名空间类

【问题讨论】:

    标签: php netbeans code-hinting


    【解决方案1】:

    我刚刚遇到了一个类似的问题,即 Netbeans 停止在特定项目中自动完成(其他项目运行良好)。我在 Windows 7 上运行 Netbeans 7.2.1。我也在使用命名空间和 use 语句。在尝试使用自动完成功能时,Netbeans 只是给了我以相同方法声明的变量名。在一个类中使用 this 关键字甚至不会给我该类中的变量/方法。

    这是我为修复它所做的:

    1. 进入“项目”窗口,右键单击我的项目并点击关闭
    2. 关闭 Netbeans
    3. 已删除 Netbeans 的缓存。这可以在 Windows 计算机上的 C:\Users\ProfileName\AppData\Local\NetBeans\Cache\7.2.1 中找到。
    4. 打开 Netbeans
    5. 通过转到 File->New Project... 将我的代码添加回项目...
    6. 检查了自动完成,它工作正常!

    【讨论】:

    • 这实际上对今天有所帮助,因为自动完成功能完全停止了我的一个项目的工作。虽然我最初的问题实际上是 netbeans 中的一个错误; netbeans.org/bugzilla/show_bug.cgi?id=225062
    • 在 Linux 上的路径是 ~\.cache\netbeans\
    • 太棒了,在这个永远不会发生的问题上浪费了 2 个小时,谢谢
    猜你喜欢
    • 2014-06-19
    • 1970-01-01
    • 2017-12-15
    • 2018-04-24
    • 1970-01-01
    • 2011-11-10
    • 1970-01-01
    • 2011-02-14
    • 2012-06-06
    相关资源
    最近更新 更多