我有java 2 SDK标准版ve 1.4.2-06
并且我编译了一个java程序,它在提取jar的内容后使用名为Visad
的jar中的类我有一个名为Visad的文件夹也包含子文件夹课程。我编译我的程序,我总是收到此错误消息
cannot access visad.java3d.DisplayImplJ3D bad class file .\visad\java3d\DisplayImplJ3D.class
class file has wrong version 50.0 should be 48.0
please remove or make sure it appears in the correct subdirectory of the classpath
我读到可能问题是我的java的版本与jar中编译的类不同,我知道该怎么做
谢谢
答案 0 :(得分:2)
您似乎正在使用版本1.4的java编译器,其中的类已经编译为1.5或1.6
您应该将您的java版本更改为更新版本...您知道我们现在正在运行Java 8吗?
您应该下载并安装java SE 8 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
答案 1 :(得分:0)
cannot access visad.java3d.DisplayImplJ3D bad class file .\visad\java3d\DisplayImplJ3D.class
class file has wrong version 50.0 should be 48.0
错误消息"类文件的部分有错误的版本50.0"告诉我们使用JDK 1.6创建了类文件DisplayImplJ3D.class,并且你正在使用JDK 1.4和#34的javac编译器;应该是48.0"。
编辑您还可以下载Visad源代码Visad homepage并使用您的JDK编译它
HOWTO使用JDK 1.4构建VisAD
cd
进入VisAD源目录ant build jar
error: package javax.media.j3d does not exist
而失败,那么您必须从安装目录手动复制必要的Jar文件(在安装过程中必须记住)修改build.xml
,添加粗体部分
< javac srcdir ="。" memoryMaximumSize =" 512M"叉="真"调试="上" classpath ="。; j3dcore.jar; j3dutils.jar; vecmath.jar" />
运行ant build jar