NetBeans 6.9.1 中的 Java 解析已停止工作

标签 java syntax-highlighting netbeans-6.9 code-completion

我在使用 NetBeans 6.9.1 时遇到了一个问题,在使用了几个月没有问题之后最近突然出现了这个问题。我在 Red Hat 5.7 上使用 Spring 和 NetBeans RCP 编写 Java 代码。

每次我打开一个文件,或者当我最初打开 NetBeans 并且它自动打开我上次处理的文件时,我都会收到 NullPointerException 和一条消息,指出“解析(文件名)期间发生错误” .我得到的语法高亮显示非常有限(蓝色的关键字,橙色的字符串文字,除此之外别无其他),并且没有任何 NetBeans 的优点,例如代码完成、按住 ctrl 键单击导航和修复导入。下面是关于 NullPointerException 的更多详细信息;这是在未连接到 Internet 的系统上发生的,因此我在前几行中手动输入,因为我无法提供 NetBeans .dump 文件。

为了尝试解决这个问题,我删除了整个 ~/.netbeans 目录并重新启动了 NetBeans。它出现了,就好像这是我第一次运行它并要求我注册,正如预期的那样(我说“从不注册”,因为我无论如何都没有连接到互联网)。然后我导航到我的项目,并得到了与以前相同的结果。

NetBeans Bugzilla 站点有关于此问题的错误报告,但没有关于如何修复它的信息。我发现的一个法语网站 (developpez.net) 表明关联的 .form 文件的语法可能有问题,但我在删除 .netbeans 目录后打开的特定文件没有 .form 文件我遇到了同样的错误 - 无论如何,当 .form 文件中存在语法错误时,它通常不会让您使用 GUI 生成器进行编辑。

如有任何帮助解决此问题,我们将不胜感激!

关于 NullPointerException 的更多信息:

WARNING [org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater]
java.lang.NullPointerException
  at java.util.Arrays$ArrayList.<init>(Arrays.java:3357)
  at java.util.Arrays.asList(Arrays.java:3343)
  at sun.net.www.protocol.file.FileURLConnection.connect(FileURLConnection.java:67)
  at sun.net.www.protocol.file.FileURLConnection.getInputStream(FileURLConnection.java:161)
...

更新:因为我在星期六独自工作,所以我跳到同事的工作站(同一网络),以我自己的身份登录,并启动了 NetBeans - 但没有遇到这个问题!它会根据我的 .netbeans 信息中的内容记住我打开了哪些文件,并解析 Java 文件并提供语法突出显示和代码导航。不幸的是,该工作站没有安装我进行测试所需的第三方 COTS 产品,所以我必须在我的工作站上。我回到我的工作站,双手合十,真心希望,但问题仍然存在。但希望这会为比我聪明的人提供线索 - 它在我的工作站上,但不在我的 .netbeans 目录中。

最佳答案

我解决了我的问题,所以我想我会更新这个以防其他人遇到同样的问题。我所要做的就是重新启动我的机器 - 优雅地,因为我在遇到这个问题时不得不在某一时刻强制重新启动,而强制重新启动没有解决问题。

认为导致这种情况发生的原因是我在 NetBeans 正在扫描项目或检查外部更改(或什至两者)的过程中关闭了它。当我这样做时,我会收到通常的弹出窗口,提示关闭 IDE 将取消这些后台任务,我告诉它无论如何都要关闭 IDE。在我重新启动(这解决了最初的问题)并取消上述任务之一并重新启动 NetBeans 之后,问题又出现了,直到我再次重新启动。

我不知道为什么中断项目扫描或检查外部更改会导致此行为,但我可以让它始终如一地发生。由于我们使用的是ClearCase和NetBeans ClearCase插件,每当我改变ClearCase View 时我需要重启NetBeans,有时当我想切换 View 时碰巧它正在扫描我会很不耐烦。我已关闭自动扫描以尽量减少此问题。

关于NetBeans 6.9.1 中的 Java 解析已停止工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12021648/

相关文章:

java - 如果两个客户端同时向使用 while 循环接受请求的 ServerSocket 发送请求,会发生什么情况

programming-languages - 如何在Atom中安装C#语言支持

PhpStorm 在项目中打开外部文件并进行检查和突出显示

emacs - 让一切都变得更加彩色

java - Netbeans GUI 组件修改后不更新

c++ - ifstream 不创建和打开输出文件

java - 如何使用 OpenCV 在同一个 Java 程序中运行多个 haarcascade xml 文件?

Java - 定义和访问注释?

java - RestTemplate 将文件作为字节从一个 Controller 发送到另一个 Controller

java - 我正在尝试从另一个框架打开 JPanel。不能这样做