okhttp: Missing com.squareup.okhttp.internal.Util

Using okhttp-1.2.0.jar and retrofit-1.1.1.jar results in a crash:

08-14 15:09:52.234: E/AndroidRuntime(1844): java.lang.ExceptionInInitializerError
08-14 15:09:52.234: E/AndroidRuntime(1844):     at java.lang.Class.classForName(Native Method)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at java.lang.Class.forName(Class.java:217)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at java.lang.Class.forName(Class.java:172)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at retrofit.Platform.hasOkHttpOnClasspath(Platform.java:155)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at retrofit.Platform.access$200(Platform.java:36)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at retrofit.Platform$Android.defaultClient(Platform.java:112)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at retrofit.RestAdapter$Builder.ensureSaneDefaults(RestAdapter.java:546)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at retrofit.RestAdapter$Builder.build(RestAdapter.java:536)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at com.commonsware.android.retrofit.QuestionsFragment.onCreateView(QuestionsFragment.java:45)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:829)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1035)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at android.app.BackStackRecord.run(BackStackRecord.java:635)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1397)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at android.app.Activity.performStart(Activity.java:5017)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2032)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at android.app.ActivityThread.access$600(ActivityThread.java:130)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at android.os.Handler.dispatchMessage(Handler.java:99)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at android.os.Looper.loop(Looper.java:137)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at android.app.ActivityThread.main(ActivityThread.java:4745)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at java.lang.reflect.Method.invokeNative(Native Method)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at java.lang.reflect.Method.invoke(Method.java:511)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
08-14 15:09:52.234: E/AndroidRuntime(1844):     at dalvik.system.NativeStart.main(Native Method)
08-14 15:09:52.234: E/AndroidRuntime(1844): Caused by: java.lang.NoClassDefFoundError: com.squareup.okhttp.internal.Util
08-14 15:09:52.234: E/AndroidRuntime(1844):     at com.squareup.okhttp.OkHttpClient.<clinit>(OkHttpClient.java:42)
08-14 15:09:52.234: E/AndroidRuntime(1844):     ... 26 more

OkHttpClient references com.squareup.okhttp.internal.Util, which is not in the JAR, nor in the repo.

okhttp-1.1.0.jar works fine and has this missing class.

About this issue

  • Original URL
  • State: closed
  • Created 11 years ago
  • Comments: 16 (7 by maintainers)

Most upvoted comments

I wish this was clearly stated on the main website, so that I didn’t have to search for HOURS trying to debug this.

Then, IMHO, the download-the-JAR link on http://square.github.io/okhttp/ should be the jar-with-dependencies version.