Types 奇怪的Java变量类型,带“quot;“无法访问”;错误,但在可编译代码中

Types 奇怪的Java变量类型,带“quot;“无法访问”;错误,但在可编译代码中,types,ide,static-libraries,java,Types,Ide,Static Libraries,Java,在编写代码时,我遇到了一种“行为”既不像NetBeans IDE中的原语也不像对象的类型。类型为(但可能确切的类型与此问题无关) 在我看来: 我的项目编译得很好,尽管下面的很多地方都使用了这种类型 我的NetBeans无法识别此类型(“找不到符号”在我编写IoBuffer时提示) 我无法创建IoBuffer变量/实例(编译错误:“找不到符号”) 我不能对该类型调用任何方法,比如toString 当然,这是一个标准的Java类,但从当前的角度来看,它看起来很不寻常(与Red5 Media Se

在编写代码时,我遇到了一种“行为”既不像NetBeans IDE中的原语也不像对象的类型。类型为(但可能确切的类型与此问题无关)

在我看来:

  • 我的项目编译得很好,尽管下面的很多地方都使用了这种类型
  • 我的NetBeans无法识别此类型(
    “找不到符号”
    在我编写
    IoBuffer
    时提示)
  • 我无法创建
    IoBuffer
    变量/实例(
    编译错误:“找不到符号”
  • 我不能对该类型调用任何方法,比如
    toString
当然,这是一个标准的Java类,但从当前的角度来看,它看起来很不寻常(与Red5 Media Server捆绑在一起的示例之一的Maven项目)

简单调用:

// videoData.getData() returns IoBuffer
videoData.getData().toString()
导致提示和编译时错误:

org/red5/demos/oflaDemo/StreamMultiplexer.java:[89,30]错误:无法访问IoBuffer

如果我只写
videoData.getData()
,同样的错误-在本例中提示是
类型od getData()是错误的


造成这种情况的原因是什么?

您是否尝试过清除netbeans缓存?要清除缓存,请关闭Netbeans,重命名%AppData%\Local\Netbeans\cache\7.2\index,重新启动,等待后台扫描完成,然后重试…

如果我的回答不够具体,请道歉。如果您能提供更多的代码,这可能会有所帮助

我认为最好的方法是重新创建特定的项目并重新导入依赖项。 有许多人似乎有类似的错误:

如果不起作用,请尝试:

  • 更改您正在使用的java版本。()
  • 清除缓存,删除所有类文件,重新编译所有内容。()
  • 关闭并打开NetBeans项目
  • 在不同的IDE中加载项目,比如eclipse

如果有帮助,请告诉我。

该库很可能在编译时位于您的构建路径中,但NetBeans无法找到它以获得代码帮助。你的项目是如何组织的?蚂蚁?Maven?请注意,按字面意思使用此代码(
iobuffersomevar
)会导致编译时错误,而不仅仅是提示。但是很多连接的代码在下面使用这种类型-
视频数据编译成功。你能提供一个显示这种行为的自包含程序吗?@Vegard我认为这可能很难,因为这个问题与环境高度相关,而不是我认为的唯一代码。我不是在寻找解决方案,而是在寻找导致问题的原因,因为我无法在小示例中重现它。