Skip to content

Failed to find byte code for com/mapzen/android/lost/api/LostApiClient$ConnectionCallbacks #1943

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
sonofspring2 opened this issue Oct 20, 2018 · 12 comments

Comments

@sonofspring2
Copy link

Summary:

I tried to build the project after cloning the project from github. But I found a build error:
Failed to find byte code for com/mapzen/android/lost/api/LostApiClient$ConnectionCallbacks

Add System logs:

org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:transformClassesWithInstantRunForBetaDebug'.
	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:100)
	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
	at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)
	at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:62)
	at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
	at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:60)
	at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:97)
	at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:87)
	at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
	at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
	at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
	at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
	at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
	at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248)
	at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
	at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
	at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)
	at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)
	at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241)
	at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)
	at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:123)
	at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:79)
	at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:104)
	at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:98)
	at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:626)
	at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:581)
	at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:98)
	at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
	at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
	at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.RuntimeException: com.android.build.api.transform.TransformException: java.lang.RuntimeException: java.lang.RuntimeException: java.io.IOException: Failed to find byte code for com/mapzen/android/lost/api/LostApiClient$ConnectionCallbacks
	at com.android.builder.profile.Recorder$Block.handleException(Recorder.java:55)
	at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:104)
	at com.android.build.gradle.internal.pipeline.TransformTask.transform(TransformTask.java:212)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
	at org.gradle.api.internal.project.taskfactory.IncrementalTaskAction.doExecute(IncrementalTaskAction.java:46)
	at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39)
	at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)
	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:121)
	at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
	at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
	at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)
	at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)
	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:110)
	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
	... 32 more
Caused by: com.android.build.api.transform.TransformException: java.lang.RuntimeException: java.lang.RuntimeException: java.io.IOException: Failed to find byte code for com/mapzen/android/lost/api/LostApiClient$ConnectionCallbacks
	at com.android.build.gradle.internal.transforms.InstantRunTransform.doTransform(InstantRunTransform.java:312)
	at com.android.build.gradle.internal.transforms.InstantRunTransform.transform(InstantRunTransform.java:178)
	at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:221)
	at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:217)
	at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:102)
	... 48 more
Caused by: java.lang.RuntimeException: java.lang.RuntimeException: java.io.IOException: Failed to find byte code for com/mapzen/android/lost/api/LostApiClient$ConnectionCallbacks
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.util.concurrent.ForkJoinTask.getThrowableException(ForkJoinTask.java:593)
	at java.util.concurrent.ForkJoinTask.reportException(ForkJoinTask.java:677)
	at java.util.concurrent.ForkJoinTask.join(ForkJoinTask.java:720)
	at com.android.ide.common.internal.WaitableExecutor.waitForTasksWithQuickFail(WaitableExecutor.java:146)
	at com.android.build.gradle.internal.transforms.InstantRunTransform.doTransform(InstantRunTransform.java:307)
	... 52 more
Caused by: java.lang.RuntimeException: java.io.IOException: Failed to find byte code for com/mapzen/android/lost/api/LostApiClient$ConnectionCallbacks
	at java.util.concurrent.ForkJoinTask$AdaptedCallable.exec(ForkJoinTask.java:1431)
	at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
	at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
	at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
	at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
Caused by: java.io.IOException: Failed to find byte code for com/mapzen/android/lost/api/LostApiClient$ConnectionCallbacks
	at com.android.build.gradle.internal.incremental.AsmUtils.lambda$static$0(AsmUtils.java:89)
	at com.android.build.gradle.internal.incremental.AsmUtils.loadClass(AsmUtils.java:307)
	at com.android.build.gradle.internal.incremental.AsmUtils.readInterfaceHierarchy(AsmUtils.java:216)
	at com.android.build.gradle.internal.incremental.AsmUtils.readInterfaces(AsmUtils.java:251)
	at com.android.build.gradle.internal.incremental.AsmUtils.readClassAndInterfaces(AsmUtils.java:190)
	at com.android.build.gradle.internal.incremental.AsmUtils.loadClass(AsmUtils.java:278)
	at com.android.build.gradle.internal.incremental.IncrementalVisitor.instrumentClass(IncrementalVisitor.java:342)
	at com.android.build.gradle.internal.transforms.InstantRunTransform.transformToClasses2Format(InstantRunTransform.java:406)
	at com.android.build.gradle.internal.transforms.InstantRunTransform.lambda$doTransform$3(InstantRunTransform.java:268)
	at com.android.build.gradle.internal.transforms.InstantRunTransform.lambda$null$4(InstantRunTransform.java:297)
	at java.util.concurrent.ForkJoinTask$AdaptedCallable.exec(ForkJoinTask.java:1424)
	... 4 more

I am pretty new to android world. Does anyone have the same issue? Or Do I miss something? Thank you!

@misaochan
Copy link
Member

Have you tried "Clean project" and then building again?

@albendz
Copy link
Contributor

albendz commented Oct 25, 2018

I've been having the same problem lately. Here's what I tried:

  • Syncing gradle via Android Studio
  • Grade clean
  • Removing project from Android Studio and re-adding
  • Deleting the entire directory for the project and cloning again

None of the above worked. However, I have no problems on older branches from 2016.

@misaochan
Copy link
Member

Hmm, interesting. I am able to build master on prodDebug, and the Travis build is passing. What version of Android Studio and what build variant are you using?

@albendz
Copy link
Contributor

albendz commented Oct 26, 2018

I tried with Android studio versions 3.1.3 and 3.2.1. Build variant betaDebug.

@albendz
Copy link
Contributor

albendz commented Oct 26, 2018

prodDebug has the same problem for me as well.

@misaochan
Copy link
Member

misaochan commented Oct 29, 2018

Is anyone else able to reproduce this? I have no idea why it works for some people and not for others. :/ What OS are both of you using? Does the 2.8-release branch build for you?

As an aside, my AS version is 3.1.4, but I doubt there would be much difference between that and the one you used.

@albendz
Copy link
Contributor

albendz commented Oct 29, 2018

Windows 10.

@sonofspring2
Copy link
Author

A follow up. I modified the dependecies gradle version from 3.1.4 to 3.2.0. Then the app can be built and installed.
The line I modified is :
https://github.com/commons-app/apps-android-commons/blob/master/build.gradle#L10 .

However, the app throws a new Exception when it's trying to load iamge for "Explore".

E/CategoryImagesListFragm: Error occurred while loading images inside a category
    java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.length()' on a null object reference
        at java.io.StringReader.<init>(StringReader.java:50)
        at android.text.HtmlToSpannedConverter.convert(Html.java:746)
        at android.text.Html.fromHtml(Html.java:242)
        at android.text.Html.fromHtml(Html.java:196)
        at fr.free.nrw.commons.utils.StringUtils.getParsedStringFromHtml(StringUtils.java:9)
        at fr.free.nrw.commons.category.CategoryImageUtils.getCreator(CategoryImageUtils.java:111)
        at fr.free.nrw.commons.category.CategoryImageUtils.getMediaFromPage(CategoryImageUtils.java:68)
        at fr.free.nrw.commons.category.CategoryImageUtils.getMediaList(CategoryImageUtils.java:31)
        at fr.free.nrw.commons.mwapi.ApacheHttpClientMediaWikiApi.getCategoryImages(ApacheHttpClientMediaWikiApi.java:739)
        at fr.free.nrw.commons.category.CategoryImageController.getCategoryImages(CategoryImageController.java:27)
E/CategoryImagesListFragm:     at fr.free.nrw.commons.category.CategoryImagesListFragment.lambda$initList$0(CategoryImagesListFragment.java:111)
        at fr.free.nrw.commons.category.-$$Lambda$CategoryImagesListFragment$pKY-2GIsQQY2CXgcyRo2qFgUpyo.call(Unknown Source:2)
        at io.reactivex.internal.operators.observable.ObservableFromCallable.subscribeActual(ObservableFromCallable.java:42)
        at io.reactivex.Observable.subscribe(Observable.java:12030)
        at com.tspoon.traceur.ObservableOnAssemblyCallable.subscribeActual(ObservableOnAssemblyCallable.java:42)
        at io.reactivex.Observable.subscribe(Observable.java:12030)
        at io.reactivex.internal.operators.observable.ObservableSubscribeOn$SubscribeTask.run(ObservableSubscribeOn.java:96)
        at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:579)
        at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
        at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
        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:764)
    Caused by: com.tspoon.traceur.TraceurException: Debug Exception generated at call site
        at dalvik.system.VMStack.getThreadStackTrace(Native Method)
        at java.lang.Thread.getStackTrace(Thread.java:1538)
        at io.reactivex.Observable.fromCallable(Observable.java:1721)
        at fr.free.nrw.commons.category.CategoryImagesListFragment.initList(CategoryImagesListFragment.java:111)
        at fr.free.nrw.commons.category.CategoryImagesListFragment.initViews(CategoryImagesListFragment.java:83)
        at fr.free.nrw.commons.category.CategoryImagesListFragment.onViewCreated(CategoryImagesListFragment.java:71)
        at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1439)
        at android.support.v4.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1759)
        at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1827)
        at android.support.v4.app.BackStackRecord.executeOps(BackStackRecord.java:797)
        at android.support.v4.app.FragmentManagerImpl.executeOps(FragmentManager.java:2596)
        at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2383)
        at android.support.v4.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManager.java:2338)
        at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:2245)
        at android.support.v4.app.FragmentManagerImpl.dispatchStateChange(FragmentManager.java:3248)
        at android.support.v4.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManager.java:3200)
        at android.support.v4.app.FragmentController.dispatchActivityCreated(FragmentController.java:195)
        at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:597)
        at android.support.v7.app.AppCompatActivity.onStart(AppCompatActivity.java:177)
        at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1391)
        at android.app.Activity.performStart(Activity.java:7165)
        at android.app.ActivityThread.handleStartActivity(ActivityThread.java:2938)
        at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:180)
        at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:165)
        at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:142)
        at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1809)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:193)
        at android.app.ActivityThread.main(ActivityThread.java:6680)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
    Caused by: com.tspoon.traceur.TraceurException: Debug Exception generated at call site
        at dalvik.system.VMStack.getThreadStackTrace(Native Method)
        at java.lang.Thread.getStackTrace(Thread.java:1538)
        at io.reactivex.Observable.subscribeOn(Observable.java:12107)
        at fr.free.nrw.commons.category.CategoryImagesListFragment.initList(CategoryImagesListFragment.java:112)
    	... 29 more
    Caused by: com.tspoon.traceur.TraceurException: Debug Exception generated at call site
        at dalvik.system.VMStack.getThreadStackTrace(Native Method)
        at java.lang.Thread.getStackTrace(Thread.java:1538)
        at io.reactivex.Observable.observeOn(Observable.java:9756)
        at io.reactivex.Observable.observeOn(Observable.java:9689)
        at fr.free.nrw.commons.category.CategoryImagesListFragment.initList(CategoryImagesListFragment.java:113)
    	... 29 more
    Caused by: com.tspoon.traceur.TraceurException: Debug Exception generated at call site
        at dalvik.system.VMStack.getThreadStackTrace(Native Method)
        at java.lang.Thread.getStackTrace(Thread.java:1538)
        at io.reactivex.Observable.timeout0(Observable.java:13568)
        at io.reactivex.Observable.timeout(Observable.java:13398)
E/CategoryImagesListFragm:     at fr.free.nrw.commons.category.CategoryImagesListFragment.initList(CategoryImagesListFragment.java:114)
    	... 29 more

Android Studio Version: 3.2.1
Device and OS:
Pixel 2 , Android 9.
Emulator Nexus 6, Android 6.0

@misaochan
Copy link
Member

Great to hear that, @sonofspring2 ! We should probably be updating our Gradle build tools version anyway, so feel free to submit a PR for that along with your investigations on the Explore exception.

@domdomegg
Copy link
Member

Managed to reliably recreate (at least on my machine). For me, it's whenever instant run is enabled.

To disable instant run (and get rid of this error), disable instant run:
File > Settings > Build, Execution, Deployment > Instant Run

I've reported an issue with instant run on this - if others with the same problem do hopefully it'll help them fix it quicker. The instructions are in that settings page, and appear when you disable instant run.

Android Studio version:

Android Studio 3.2.1
Build #AI-181.5540.7.32.5056338, built on October 9, 2018
JRE: 1.8.0_152-release-1136-b06 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Windows 10 10.0

@albendz
Copy link
Contributor

albendz commented Nov 3, 2018

It works now. Thank you @domdomegg

@misaochan
Copy link
Member

Thanks for the investigation @domdomegg . :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants