java.lang.ClassFormatError

java.lang.ClassFormatError,java,linux,classformaterror,Java,Linux,Classformaterror,我需要开发一个示例应用程序,并将其部署到Linux中并进行测试 问题是我越来越 Exception in thread "main" java.lang.ClassFormatError: com.tata.topSamples.QuoteData (unrecognized class file version) at java.lang.VMClassLoader.defineClass(libgcj.so.7rh) at java.lang.ClassLoader.define

我需要开发一个示例应用程序,并将其部署到Linux中并进行测试

问题是我越来越

Exception in thread "main" java.lang.ClassFormatError: com.tata.topSamples.QuoteData (unrecognized class file version)
   at java.lang.VMClassLoader.defineClass(libgcj.so.7rh)
   at java.lang.ClassLoader.defineClass(libgcj.so.7rh)
   at java.security.SecureClassLoader.defineClass(libgcj.so.7rh)
   at java.net.URLClassLoader.findClass(libgcj.so.7rh)
   at java.lang.ClassLoader.loadClass(libgcj.so.7rh)
   at java.lang.ClassLoader.loadClass(libgcj.so.7rh)
   at gnu.java.lang.MainThread.run(libgcj.so.7rh)
通过谷歌搜索我发现,您使用比Linux机器上更新的Java版本编译了jar

在我的windows环境中,我有1.6版本,在Linux环境中,java版本是1.4.2。

我们如何解决这个错误

请告诉我如何解决此错误

使用
-target 1.4
-source 1.4
标志进行编译,或者在Linux机器上更新到最新版本的Java。(请注意,使用这些标志可以让您在Windows机箱中保留JDK的最新版本。)

因此:

你必须使用GCJ而不是(说)吗

请告诉我如何解决此错误

使用
-target 1.4
-source 1.4
标志进行编译,或者在Linux机器上更新到最新版本的Java。(请注意,使用这些标志可以让您在Windows机箱中保留JDK的最新版本。)

因此:


您是否必须使用GCJ而不是(比如)在Linux环境中升级版本,或在Windows上使用1.4.2构建版本。

在Linux环境中升级版本,或在Windows上使用1.4.2构建版本。

升级Linux机箱上安装的Java?或者这对你来说不可能吗?将你的Linux环境更新到一个更新的Java版本;1.4.2已经过时得离谱了。升级Linux机箱上安装的Java?或者这对你来说不可能吗?将你的Linux环境更新到一个更新的Java版本;1.4.2过时得离谱。您能告诉我怎么做吗???@yyyi777:哪一位?我给了你两个选择,但你没有告诉我们关于Linux部署上的限制或如何构建代码的任何信息。你能告诉我怎么做吗???@yyyi777:哪一位?我给了你两个选择,但是你没有告诉我们关于Linux部署的限制或者你是如何构建代码的。
javac -target 1.4 -source 1.4 Foo.java Bar.java