简单的java程序无法运行

简单的java程序无法运行,java,Java,我正在尝试用java版本1.6在linux机器上编译和运行HelloWorld。我编译了它,但无法运行它。我知道这个程序至少是正确的 有人能告诉我如何运行这个愚蠢的程序吗 我知道这个问题已经被解决过好几次了,但是没有找到解决这个问题的方法。我使用的编译命令:javac ExampleProgram.java。 运行我使用的命令:javaexampleprogram //A Very Simple Example class ExampleProgram { public static voi

我正在尝试用java版本1.6在linux机器上编译和运行HelloWorld。我编译了它,但无法运行它。我知道这个程序至少是正确的

有人能告诉我如何运行这个愚蠢的程序吗

我知道这个问题已经被解决过好几次了,但是没有找到解决这个问题的方法。我使用的编译命令:
javac ExampleProgram.java
。 运行我使用的命令:
javaexampleprogram

//A Very Simple Example
class ExampleProgram {
  public static void main(String[] args){
    System.out.println("I'm a Simple Program");
  }
}
错误:

java -classpath . ExampleProgram
Exception in thread "main" java.lang.UnsupportedClassVersionError: ExampleProgram : Unsupported major.minor version 51.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
    at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Could not find the main class: ExampleProgram.  Program will exit.

您的程序是用JDK1.7编译的,但实际上是用早期版本的Java运行的

如果在命令行中调用该程序,请键入

java -version
查看您实际使用的Java版本

或者,如果您正在使用Eclipse之类的编辑器,请查看Java设置

另一个解决方案是使用

javac -source 1.6 -target 1.6 SimpleProgram.java
而不是

javac SimpleProgram.java

您正在编译和运行不同版本的Java,这对我解决问题没有多大帮助。当我检查java版本时,它告诉我:java版本“1.6.0_35”java(TM)SE运行时环境(构建1.6.0_35-b10)java热点(TM)64位服务器VM(构建20.10-b01,混合模式)您的jre和jdk应该是相同的版本…如何修复它,使编译和运行可以使用相同的版本发布?使用
javac-version
检查您的javac版本当我检查java版本时,它告诉我:java版本“1.6.0_35”java(TM)SE运行时环境(构建1.6.0_35-b10)java HotSpot(TM)64位服务器VM(构建20.10-b01,混合模式)也看到了吗?我刚才回答了一个类似的问题。你能删除SimpleProgram.class文件,然后用javac-source 1.6-target 1.6 SimpleProgram.java再试一次吗?它应该可以工作。@su-OPs Classname是
class-ExampleProgram
我明白了。这就是为什么。谢谢Smit.MMAB,正如Smit指出的,你正在编译类a并执行类B。