当我包含一个我必须从源代码编译的开源库时,我收到此错误.现在,网上的所有建议都表明代码是在一个版本中编译的,并在另一个版本中执行(旧的新版本).但是,我的系统上只有一个版本的JRE.如果我运行命令:
$ javac -version
javac 1.5.0_18
$ java -version
java version "1.5.0_18"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_18-b02)
Java HotSpot(TM) Server VM (build 1.5.0_18-b02, mixed mode)
Run Code Online (Sandbox Code Playgroud)
并在Eclipse中检查java库的属性,我得到了 1.5.0_18
因此,我必须得出结论,一个类本身的内部,抛出异常?这甚至可能吗?
Jos*_*non 184
我已经知道像这样的错误消息通常是正确的.当它不可能(在你的脑海中)被报告的错误所说的时候,你去寻找另一个地区的问题...只是在几小时之后发现原始的错误信息确实是正确的.
既然你正在使用Eclipse,我认为Thilo是正确的.你得到这个消息的最可能的原因是因为你的一个项目正在编译1.6个类.如果你在系统上只有1.5 JRE就没关系,因为Eclipse有自己的编译器(不是javac),只需要1.5 JRE来编译1.6类.这可能很奇怪,并且需要取消选中设置以允许这样做,但我设法做到了.
对于有问题的项目,请检查项目属性(通常是Alt + Enter),Java Compiler部分.这是一个配置为编译1.6的项目的图像,但只有1.5 JRE.
您是否尝试过完全"干净"然后在Eclipse中重建(Project-> Clean ...)?
你能直接从命令行编译和运行"javac"和"java"吗?这是否正常?
如果右键单击项目,请转到"属性",然后转到"Java构建路径",任何选项卡下是否有可疑条目?这基本上就是你的CLASSPATH.
在Eclipse首选项中,您可能还需要仔细检查"Java"部分中的"已安装的JRE"部分,并确保它符合您的预期.
你肯定有一个陈旧的.class文件存在于某个地方,或者你正在使用的Java版本中得到编译时/运行时不匹配.
你用Eclipse编译了吗?它使用不同的编译器(不是javac).这不应该导致此错误(如果一切配置正确),但您可以尝试使用javac编译它.
如果这解决了问题,请尝试查看Eclipse是否有一些不正确的编译器设置.特别是它以Java 5为目标.
归档时间: |
|
查看次数: |
387109 次 |
最近记录: |