java.lang.NoSuchMethodError: No static method metafactory
See original GitHub issueIt seems the newest version implementation 'com.squareup.retrofit2:converter-scalars:2.7.1' has not convertFactory support. Follow code:
val retrofit: Retrofit = Retrofit.Builder()
.baseUrl("http://www.example.com")
.addConverterFactory(ScalarsConverterFactory.create())
.build()
It will report a no metafactory error, if I downgrade to 1.5.0, this code will work as well.
Issue Analytics
- State:
- Created 4 years ago
- Comments:6 (2 by maintainers)
Top Results From Across the Web
No static method metafactory - java - Stack Overflow
In my case, I was importing a new android library, my android library was compatible with java 8 but my main project wasn't....
Read more >No static method metafactory(Ljava/lang/invoke ...
java.lang.NoSuchMethodError: No static method metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String ...
Read more >No static method metafactory...(java.lang.invoke ...
NoSuchMethodError : No static method metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType ...
Read more >java static method_java.lang.NoSuchMethodError
java.lang.NoSuchMethodError: No static method metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType ...
Read more >No static method metafactory(Ljava/lang/invoke ... - 简书
解决Caused by: java.lang.NoSuchMethodError: No st... 先发日志想了很久也没有明白是怎么会儿事,只出现在小米和红米的部分机型。反 ...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found

Is it possible to get a better error message about that?
Adding this fixes the exception but then it requires quite an effort to discover the solution: compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 }
E/AndroidRuntime: FATAL EXCEPTION: main Process: com.example.android.gdgfinder, PID: 13784 java.lang.NoSuchMethodError: No static method metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; in class Ljava/lang/invoke/LambdaMetafactory; or its super classes (declaration of ‘java.lang.invoke.LambdaMetafactory’ appears in /apex/com.android.runtime/javalib/core-oj.jar) at okhttp3.internal.Util.<clinit>(Util.java:87) at okhttp3.internal.Util.skipLeadingAsciiWhitespace(Util.java:321) at okhttp3.HttpUrl$Builder.parse(HttpUrl.java:1313) at okhttp3.HttpUrl.get(HttpUrl.java:917) at retrofit2.Retrofit$Builder.baseUrl(Retrofit.java:492) at com.example.android.gdgfinder.network.GdgApiServiceKt.<clinit>(GdgApiService.kt:26) at com.example.android.gdgfinder.network.GdgApiServiceKt.access$getRetrofit$p(GdgApiService.kt:1) at com.example.android.gdgfinder.network.GdgApi$retrofitService$2.invoke(GdgApiService.kt:30) at com.example.android.gdgfinder.network.GdgApi$retrofitService$2.invoke(GdgApiService.kt:29) at kotlin.SynchronizedLazyImpl.getValue(LazyJVM.kt:74) at com.example.android.gdgfinder.network.GdgApi.getRetrofitService(Unknown Source:2) at com.example.android.gdgfinder.search.GdgListViewModel.<init>(GdgListViewModel.kt:15) at java.lang.Class.newInstance(Native Method) at androidx.lifecycle.ViewModelProvider$NewInstanceFactory.create(ViewModelProvider.java:219) at androidx.lifecycle.ViewModelProvider$AndroidViewModelFactory.create(ViewModelProvider.java:278) at androidx.lifecycle.SavedStateViewModelFactory.create(SavedStateViewModelFactory.java:106) at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.java:185) at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.java:150) at com.example.android.gdgfinder.search.GdgListFragment$viewModel$2.invoke(GdgListFragment.kt:26) at com.example.android.gdgfinder.search.GdgListFragment$viewModel$2.invoke(GdgListFragment.kt:22) at kotlin.SynchronizedLazyImpl.getValue(LazyJVM.kt:74) at com.example.android.gdgfinder.search.GdgListFragment.getViewModel(Unknown Source:2) at com.example.android.gdgfinder.search.GdgListFragment.onCreateView(GdgListFragment.kt:37) at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2698) at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:310) at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1185) at androidx.fragment.app.FragmentManager.addAddedFragments(FragmentManager.java:2222) at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1995) at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1951) at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1847) at androidx.fragment.app.FragmentManager$4.run(FragmentManager.java:413) at android.os.Handler.handleCallback(Handler.java:883) at android.os.Handler.dispatchMessage(Handler.java:100) at android.os.Looper.loop(Looper.java:214) at android.app.ActivityThread.main(ActivityThread.java:7356) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
E/AndroidRuntime: FATAL EXCEPTION: main Process: com.example.android.gdgfinder, PID: 14120 retrofit2.HttpException: HTTP 404 at com.jakewharton.retrofit2.adapter.kotlin.coroutines.CoroutineCallAdapterFactory$BodyCallAdapter$adapt$2.onResponse(CoroutineCallAdapterFactory.kt:104) at retrofit2.OkHttpCall$1.onResponse(OkHttpCall.java:150) at okhttp3.RealCall$AsyncCall.execute(RealCall.java:174) at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) at java.lang.Thread.run(Thread.java:919)
Thanks. Works perfectly 👍
Followed the android java8-support guide: https://developer.android.com/studio/write/java8-support