2016-03-18 10 views
3

java.lang.UnsupportedClassVersionError: JVMCFRE003 schlechte Hauptversion; class = okhttp3/MediaType, offset = 6 Dies ist die Ausnahme, die ich erhalte, wenn ich den Code auf WAS 7 ausführe. Ich denke, der okhttp-Code wurde mit Java 7 oder einer höheren Version kompiliert, und ich versuche, ihn in WAS 7 zu verwenden die verwendet Java 6. ich die neueste jar bin mit (v 3.2) von http://square.github.io/okhttp/Wo bekomme ich OkHttpClient-Version in jdk 1.6 kompiliert? Ich erhalte UnsupportedClassVersionError während der Ausführung unter WAS 7

Antwort

1

ich glaube nicht, dass es eine ist. OkHttpClient benötigte Java7 seit 2012. Es verwendet APIs, die nur in Java7 und später verfügbar sind (z. B. syncFlush API auf DeflaterOutputStream, wie in github commit that enforced compilation against java7 erwähnt).

Sie müssen in Java6 eine andere HTTP-Bibliothek verwenden. Z.B. Apache HttpClient oder java.net.URL.

+0

Danke, dass Sie darauf hingewiesen haben. Und das bedeutet auch, dass WebSphere Server 7.x.x OkHttpClient nicht verwenden kann. Sowohl WAS 7.x.x als auch WAS 8.0.x verwenden Java 6. WebSphere 8.5.x verwendet Java 7. Sie sollten eine Version berücksichtigen, die in Java 6 für alle WAS 7 & 8-Benutzer kompiliert wurde. http://www-01.ibm.com/support/docview.wss?uid=swg27005002 – Yash

+0

@Yash Es wurde ein Problem (zurück am 5. September 2012) bezüglich der Unterstützung von Java <7 geöffnet. Es wurde mit geschlossen * "... Sie müssen Java 7 verwenden." *. https://github.com/square/okhttp/issues/18 – Stephan