0

我正在尝试使用 java 1.6 版在 linux 机器上编译和运行 HelloWorld。我得到它编译但不能运行它。我知道该程序至少是正确的。

谁能告诉我如何让愚蠢的程序运行?

我知道这个问题已经被多次提及,但没有找到解决该问题的方法。我使用的编译命令:javac ExampleProgram.java. 我使用的运行命令:java ExampleProgram

//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.
4

1 回答 1

2

您的程序是使用 JDK 1.7 编译的,但您实际上是使用早期版本的 Java 运行它的。

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

java -version

查看您实际使用的 Java 版本。

或者,如果您使用的是 Eclipse 之类的编辑器,请检查您的 Java 设置。

另一种解决方案是使用

javac -source 1.6 -target 1.6 SimpleProgram.java

代替

javac SimpleProgram.java
于 2013-03-28T19:04:03.347 回答