Netbeans 7.2自动完成命名空间类

时间:2013-01-18 11:23:15

标签: php netbeans code-hinting

修改:报告,接受并修补了错误http://netbeans.org/bugzilla/show_bug.cgi?id=225062

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

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

方案;
Router \ Route 命名空间中存在类 HostNameRoute ,构造函数接受两个参数 $ route $ action 。< / p>

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>);

适用于根命名空间
Autocomplete works


不适用于命名空间类 No autocomplete

1 个答案:

答案 0 :(得分:3)

我遇到了类似的问题,Netbeans在特定项目中停止了自动填充(其他项目工作正常)。我在Windows 7上运行Netbeans 7.2.1。我也使用名称空间和使用语句。在尝试使用自动完成时,Netbeans只是给了我在同一方法中声明的变量名。在类中使用 this 关键字甚至不会在该类中为我提供变量/方法。

以下是我采取的措施:

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