re:Java包声明:Netbeans说:'包装错误'

时间:2010-08-13 00:44:32

标签: netbeans package

orig post:

Hello List,

我是Java,Netbeans和IB Java API的新手。

我下载了IB Java API软件,我正在使用Netbeans来查看它。

在其中一个文件上,Netbeans表示该文件存在问题。

在文件的最顶部,作者已经发布了一个包声明:

package samples.rfq;

Netbeans在包装声明的左边使用了一个红点,告诉我包装声明有问题。

当我鼠标悬停包装声明时,Netbeans告诉我:

包不正确(Alt-Enter显示提示)

在我的Mac键盘上,我按下Alt-Enter,Netbeans只是将其解释为Enter(然后我需要撤消Enter)。

我有两个问题:

如何解决Alt-Enter-bug以查看提示?

当Netbeans在您的某个软件包声明中显示“不正确的软件包”时,您通常会做什么?

我对Josefx的评论:

josefx,

我想也许你给了我一个很好的线索。

我查看了该文件,我在(Linux)文件系统中看到了它:

一个@ Z2:/ PT / Z2 / API $ a @ z2:/ pt / z2 / api $ ls -la /pt/z2/api/samples/rfq/SampleRfq.java -rw-r - r-- 1 a a 14475 2008-08-13 15:49 /pt/z2/api/samples/rfq/SampleRfq.java 一个@ Z2:/ PT / Z2 / API $ a @ z2:/ pt / z2 / api $

一个@ Z2:/ PT / Z2 / API $ a @ z2:/ pt / z2 / api $ grep包/pt/z2/api/samples/rfq/SampleRfq.java package samples.rfq; a @ z2:/ pt / z2 / api $

显然它位于与其包声明相匹配的目录中。

我尝试从各种目录中对该文件运行javac。

这有效:

cd / pt / z2 / api / javac samples / rfq / SampleRfq.java

如果我从任何其他目录运行javac,它就会失败。

所以,我在这里看到了三件事之间的依赖关系:

  • SampleRfq.java的位置
  • 包声明中的语法
  • javac命令的位置

由于我让javac工作,我确信有两件事:

  • SampleRfq.java位于正确的目录中
  • 包声明中的语法是正确的

所以,看起来我的问题在于Netbeans。 Netbeans太......'愚蠢'知道:

  • SampleRfq.java位于正确的目录中
  • 包声明中的语法是正确的

我如何帮助Netbeans?

我在Netbeans邮件列表中发布了一个问题,我得到的唯一答案是:“修复错误的文件名”。

1 个答案:

答案 0 :(得分:0)

确定,

我弄错了。

步骤进行:

  1. 放弃我的netbeans项目
  2. 将我的代码rsync到一个新目录;创建新的NB项目; (NB不会让我使用旧代码)
  3. 右键单击项目:选择属性
  4. 添加文件夹
  5. 选择与包
  6. 对应的目录的父目录

    Netbeans现在“知道”包声明与目录结构匹配。