ubuntuusers.de

Problem mit Java

Status: Gelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

winz

Anmeldungsdatum:
22. November 2007

Beiträge: Zähle...

Hallo, ich versuche programmieren zu lernen. ich möchte das heron-verfahren programmieren:
public class Heron {
public static void main (String[] args) {
double a = 5.0,
x = 1.0,
y;
for (int i = 1; i ⇐ 7; i++) {
y = (x + a / x) / 2.0;
x = y;
System.out.println(x);
}
}
}
Mit javac kompiliere ich das programm erfolgreich aber wenn ich es ausführen möchte also java Heron, dann bekomme ich folgende meldung:
Exception in thread "main" java.lang.UnsupportedClassVersionError: Heron (Unsupported major.minor version 50.0)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
Ich weiß nicht was mir fehlt. mein betriebssystem ist xubuntu
kann mir jemand helfen? vielen dank schonmal

Maduser

Avatar von Maduser

Anmeldungsdatum:
3. Mai 2005

Beiträge: 1238

Ich habe das gerade mal bei mir ausprobiert und es geht:

~$ java Heron
3.0
2.3333333333333335
2.238095238095238
2.2360688956433634
2.236067977499978
2.23606797749979
2.23606797749979
$ java -version
java version "1.6.0_03"
Java(TM) SE Runtime Environment (build 1.6.0_03-b05)
Java HotSpot(TM) Client VM (build 1.6.0_03-b05, mixed mode, sharing)

fnumatic

Anmeldungsdatum:
20. Februar 2007

Beiträge: 379

wahrscheinlich mit javac von sun kompiliert und dann mit dem gnu interpreter oder java 1.4 ausgeführt.
Informationen zum Einstellen der Java Versionen findest du im wiki
Java

jonelo

Anmeldungsdatum:
13. März 2008

Beiträge: Zähle...

Wohnort: Kirchheim b. München

Compiliert wurde die Klasse mit Sun's JDK 1.6 (oder der Version 7 mit der Option -target 1.6), da 1.6 den Bytecode mit der Version 50.0 versieht. Ausgeführt wurde das Programm allerdings nicht mit dem gcj, da man im Stack Trace z. B. die Zeile "at sun.misc.Launcher$AppClassLoader.loadClass... " erkennen kann, also ein Sun-Package verwendet wurde. Ausgeführt wurde das Programm auf der Kommandozeile demnach mit einer älteren JRE oder einem älteren JDK von Sun (älter als 1.6, also z. B. 1.5 oder 1.4.2). Das Kommando javac (oder die Entwicklungsumgebung die Maduser benutzt) ist aber von 1.6. Also, entweder ein älteres target für den Compiler einstellen oder für die Ausführung ebenfalls 1.6 benutzen. 8)

Antworten |