Hi
Today I updated my cn1 libs and suddenly Android and iOS builds started to
fail.
After a little research, I found out that latest versions of CN1JSON and
parse4cn1 are responsible for the failure. I got back to an earlier version
of CN1JSON and it worked again, so I guess there is some kind of
incompatibility between the two libs.
Here is the error log for Android (pay attention to the firsts lines, where
there are references to parse4cn1)
Initializing...
Note: the configuration refers to the unknown class
'com.google.vending.licensing.ILicensingService'
Note: the configuration refers to the unknown class
'com.android.vending.licensing.ILicensingService'
Note: the configuration refers to the unknown class
'com.android.vending.licensing.ILicensingService'
Note: the configuration refers to the unknown class
'com.apperhand.device.android.EULAActivity$EulaJsInterface'
Note: the configuration refers to the unknown class
'com.codename1.location.BackgroundLocationHandler'
Note: the configuration refers to the unknown class
'com.codename1.location.CodenameOneBackgroundLocationActivity'
Note: the configuration refers to the unknown class
'com.codename1.location.GeofenceHandler'
Warning: com.parse4cn1.ParsePush: can't find referenced method
'JSONArray(java.util.ArrayList)' in program class
ca.weblite.codename1.json.JSONArray
Warning: com.parse4cn1.encode.ParseDecoder: can't find referenced method
'JSONArray(java.util.ArrayList)' in program class
ca.weblite.codename1.json.JSONArray
Note: android.support.v4.text.ICUCompatApi23: can't find dynamically
referenced class libcore.icu.ICU
Note: android.support.v4.text.ICUCompatIcs: can't find dynamically
referenced class libcore.icu.ICU
Note: com.codename1.impl.android.AndroidImplementation: can't find
dynamically referenced class
com.codename1.location.AndroidLocationPlayServiceManager
Note: com.codename1.system.NativeLookup calls
'(com.codename1.system.NativeInterface)Class.forName(variable).newInstance()'
Note: com.codename1.testing.DeviceRunner calls
'(com.codename1.testing.UnitTest)Class.forName(variable).newInstance()'
Note: the configuration keeps the entry point
'android.support.v4.view.ViewPager { void
setAdapter(android.support.v4.view.PagerAdapter); }', but not the
descriptor class 'android.support.v4.view.PagerAdapter'
Note: the configuration keeps the entry point
'android.support.v4.view.ViewPager { void
setOnAdapterChangeListener(android.support.v4.view.ViewPager$OnAdapterChangeListener);
}', but not the descriptor class
'android.support.v4.view.ViewPager$OnAdapterChangeListener'
Note: the configuration keeps the entry point
'android.support.v4.view.ViewPager { void
setOnPageChangeListener(android.support.v4.view.ViewPager$OnPageChangeListener);
}', but not the descriptor class
'android.support.v4.view.ViewPager$OnPageChangeListener'
Note: the configuration keeps the entry point
'android.support.v4.widget.DrawerLayout { void
setDrawerListener(android.support.v4.widget.DrawerLayout$DrawerListener);
}', but not the descriptor class
'android.support.v4.widget.DrawerLayout$DrawerListener'
Note: the configuration keeps the entry point
'android.support.v4.widget.NestedScrollView { void
setOnScrollChangeListener(android.support.v4.widget.NestedScrollView$OnScrollChangeListener);
}', but not the descriptor class
'android.support.v4.widget.NestedScrollView$OnScrollChangeListener'
Note: the configuration keeps the entry point
'android.support.v4.widget.SlidingPaneLayout { void
setPanelSlideListener(android.support.v4.widget.SlidingPaneLayout$PanelSlideListener);
}', but not the descriptor class
'android.support.v4.widget.SlidingPaneLayout$PanelSlideListener'
Note: the configuration keeps the entry point
'android.support.v4.widget.SwipeRefreshLayout { void
setOnRefreshListener(android.support.v4.widget.SwipeRefreshLayout$OnRefreshListener);
}', but not the descriptor class
'android.support.v4.widget.SwipeRefreshLayout$OnRefreshListener'
Note: the configuration keeps the entry point
'com.codename1.impl.android.AndroidNativeUtil { void
addLifecycleListener(com.codename1.impl.android.LifecycleListener); }', but
not the descriptor class 'com.codename1.impl.android.LifecycleListener'
Note: the configuration keeps the entry point
'com.codename1.impl.android.AndroidNativeUtil { void
removeLifecycleListener(com.codename1.impl.android.LifecycleListener); }',
but not the descriptor class 'com.codename1.impl.android.LifecycleListener'
Note: the configuration keeps the entry point
'com.codename1.impl.android.AndroidNativeUtil { void
startActivityForResult(android.content.Intent,com.codename1.impl.android.IntentResultListener);
}', but not the descriptor class
'com.codename1.impl.android.IntentResultListener'
Note: the configuration keeps the entry point
'com.codename1.impl.android.AndroidNativeUtil { void
registerViewRenderer(java.lang.Class,com.codename1.impl.android.AndroidNativeUtil$BitmapViewRenderer);
}', but not the descriptor class
'com.codename1.impl.android.AndroidNativeUtil$BitmapViewRenderer'
Note: the configuration keeps the entry point
'com.google.android.gms.ads.AdView { void
setInAppPurchaseListener(com.google.android.gms.ads.purchase.InAppPurchaseListener);
}', but not the descriptor class
'com.google.android.gms.ads.purchase.InAppPurchaseListener'
Note: the configuration keeps the entry point
'com.google.android.gms.ads.AdView { void
setAdSize(com.google.android.gms.ads.AdSize); }', but not the descriptor
class 'com.google.android.gms.ads.AdSize'
Note: the configuration keeps the entry point
'com.google.android.gms.ads.AdView { void
setAdListener(com.google.android.gms.ads.AdListener); }', but not the
descriptor class 'com.google.android.gms.ads.AdListener'
Note: the configuration keeps the entry point
'com.google.android.gms.ads.BaseAdView { void
setAdListener(com.google.android.gms.ads.AdListener); }', but not the
descriptor class 'com.google.android.gms.ads.AdListener'
Note: the configuration keeps the entry point
'com.google.android.gms.ads.BaseAdView { void
setAdSize(com.google.android.gms.ads.AdSize); }', but not the descriptor
class 'com.google.android.gms.ads.AdSize'
Note: the configuration keeps the entry point
'com.google.android.gms.ads.BaseAdView { void
setInAppPurchaseListener(com.google.android.gms.ads.purchase.InAppPurchaseListener);
}', but not the descriptor class
'com.google.android.gms.ads.purchase.InAppPurchaseListener'
Note: the configuration keeps the entry point
'com.google.android.gms.ads.NativeExpressAdView { void
setInAppPurchaseListener(com.google.android.gms.ads.purchase.InAppPurchaseListener);
}', but not the descriptor class
'com.google.android.gms.ads.purchase.InAppPurchaseListener'
Note: the configuration keeps the entry point
'com.google.android.gms.ads.NativeExpressAdView { void
setAdSize(com.google.android.gms.ads.AdSize); }', but not the descriptor
class 'com.google.android.gms.ads.AdSize'
Note: the configuration keeps the entry point
'com.google.android.gms.ads.NativeExpressAdView { void
setAdListener(com.google.android.gms.ads.AdListener); }', but not the
descriptor class 'com.google.android.gms.ads.AdListener'
Note: the configuration keeps the entry point
'com.google.android.gms.ads.doubleclick.PublisherAdView { void
setAdListener(com.google.android.gms.ads.AdListener); }', but not the
descriptor class 'com.google.android.gms.ads.AdListener'
Note: the configuration keeps the entry point
'com.google.android.gms.ads.doubleclick.PublisherAdView { void
setAdSizes(com.google.android.gms.ads.AdSize[]); }', but not the descriptor
class 'com.google.android.gms.ads.AdSize'
Note: the configuration keeps the entry point
'com.google.android.gms.ads.doubleclick.PublisherAdView { void
setAppEventListener(com.google.android.gms.ads.doubleclick.AppEventListener);
}', but not the descriptor class
'com.google.android.gms.ads.doubleclick.AppEventListener'
Note: the configuration keeps the entry point
'com.google.android.gms.ads.doubleclick.PublisherAdView { void
setCorrelator(com.google.android.gms.ads.Correlator); }', but not the
descriptor class 'com.google.android.gms.ads.Correlator'
Note: the configuration keeps the entry point
'com.google.android.gms.ads.doubleclick.PublisherAdView { void
setOnCustomRenderedAdLoadedListener(com.google.android.gms.ads.doubleclick.OnCustomRenderedAdLoadedListener);
}', but not the descriptor class
'com.google.android.gms.ads.doubleclick.OnCustomRenderedAdLoadedListener'
Note: the configuration keeps the entry point
'com.google.android.gms.ads.formats.NativeAdView { void
setNativeAd(com.google.android.gms.ads.formats.NativeAd); }', but not the
descriptor class 'com.google.android.gms.ads.formats.NativeAd'
Note: the configuration keeps the entry point
'com.google.android.gms.ads.search.SearchAdView { void
setAdListener(com.google.android.gms.ads.AdListener); }', but not the
descriptor class 'com.google.android.gms.ads.AdListener'
Note: the configuration keeps the entry point
'com.google.android.gms.ads.search.SearchAdView { void
setAdSize(com.google.android.gms.ads.AdSize); }', but not the descriptor
class 'com.google.android.gms.ads.AdSize'
Note: there were 7 references to unknown classes.
You should check your configuration for typos.
(http://proguard.sourceforge.net/manual/troubleshooting.html#unknownclass)
Note: there were 28 unkept descriptor classes in kept class members.
You should consider explicitly keeping the mentioned classes
(using '-keep').
(http://proguard.sourceforge.net/manual/troubleshooting.html#descriptorclass)
Note: there were 3 unresolved dynamic references to classes or interfaces.
You should check if you need to specify additional program jars.
(http://proguard.sourceforge.net/manual/troubleshooting.html#dynamicalclass)
Note: there were 2 class casts of dynamically created class instances.
You might consider explicitly keeping the mentioned classes and/or
their implementations (using '-keep').
(http://proguard.sourceforge.net/manual/troubleshooting.html#dynamicalclasscast)
Warning: there were 2 unresolved references to program class members.
Your input classes appear to be inconsistent.
You may need to recompile the code.
(http://proguard.sourceforge.net/manual/troubleshooting.html#unresolvedprogramclassmember)
Warning: Exception while processing task java.io.IOException: Please
correct the above warnings first.
:transformClassesAndResourcesWithProguardForRelease FAILED
:transformClassesAndResourcesWithProguardForRelease (Thread[Daemon
worker,5,main]) completed. Took 4.413 secs.
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task
':transformClassesAndResourcesWithProguardForRelease'.
> java.io.IOException: Please correct the above warnings first.
* Try:
Run with --debug option to get more log output.
* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task
':transformClassesAndResourcesWithProguardForRelease'.
at
org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69)
at
org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
at
org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
at
org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:64)
at
org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
at
org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.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:53)
at
org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
at
org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:203)
at
org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:185)
at
org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:66)
at
org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:50)
at
org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:25)
at
org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:110)
at
org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:37)
at
org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
at
org.gradle.execution.DefaultBuildExecuter.access$000(DefaultBuildExecuter.java:23)
at
org.gradle.execution.DefaultBuildExecuter$1.proceed(DefaultBuildExecuter.java:43)
at
org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
at
org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
at
org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:30)
at
org.gradle.initialization.DefaultGradleLauncher$4.run(DefaultGradleLauncher.java:154)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at
org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
at
org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:52)
at
org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:151)
at
org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:32)
at
org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:99)
at
org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:93)
at
org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
at
org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:62)
at
org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:93)
at
org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:82)
at
org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:94)
at
org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28)
at
org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
at
org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:43)
at
org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:28)
at
org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:75)
at
org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:45)
at
org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:52)
at
org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at
org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at
org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37)
at
org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at
org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
at
org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at
org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
at
org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at
org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
at
org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
at org.gradle.util.Swapper.swap(Swapper.java:38)
at
org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
at
org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at
org.gradle.launcher.daemon.server.health.DaemonHealthTracker.execute(DaemonHealthTracker.java:40)
at
org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at
org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:66)
at
org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at
org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at
org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:72)
at
org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at
org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at
org.gradle.launcher.daemon.server.health.HintGCAfterBuild.execute(HintGCAfterBuild.java:41)
at
org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at
org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
at
org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:246)
at
org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
at
org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
Caused by: java.lang.RuntimeException: java.io.IOException: Please correct
the above warnings first.
at com.android.builder.tasks.Job.awaitRethrowExceptions(Job.java:79)
at
com.android.build.gradle.internal.transforms.ProGuardTransform.transform(ProGuardTransform.java:209)
at
com.android.build.gradle.internal.pipeline.TransformTask$3.call(TransformTask.java:178)
at
com.android.build.gradle.internal.pipeline.TransformTask$3.call(TransformTask.java:174)
at
com.android.builder.profile.ThreadRecorder$1.record(ThreadRecorder.java:55)
at
com.android.builder.profile.ThreadRecorder$1.record(ThreadRecorder.java:47)
at
com.android.build.gradle.internal.pipeline.TransformTask.transform(TransformTask.java:173)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:75)
at
org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.doExecute(AnnotationProcessingTaskFactory.java:244)
at
org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:220)
at
org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.execute(AnnotationProcessingTaskFactory.java:231)
at
org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:209)
at
org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
at
org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
... 68 more
Caused by: java.io.IOException: Please correct the above warnings first.
at proguard.Initializer.execute(Initializer.java:473)
at proguard.ProGuard.initialize(ProGuard.java:233)
at proguard.ProGuard.execute(ProGuard.java:98)
at
com.android.build.gradle.internal.transforms.BaseProguardAction.runProguard(BaseProguardAction.java:52)
at
com.android.build.gradle.internal.transforms.ProGuardTransform.doMinification(ProGuardTransform.java:273)
at
com.android.build.gradle.internal.transforms.ProGuardTransform.access$000(ProGuardTransform.java:62)
at
com.android.build.gradle.internal.transforms.ProGuardTransform$1.run(ProGuardTransform.java:199)
at com.android.builder.tasks.Job.runTask(Job.java:51)
at
com.android.build.gradle.tasks.SimpleWorkQueue$EmptyThreadContext.runTask(SimpleWorkQueue.java:41)
at com.android.builder.tasks.WorkQueue.run(WorkQueue.java:223)
BUILD FAILED
Total time: 39.436 secs
Stopped 0 compiler daemon(s).
Received result Failure[value=org.gradle.initialization.ReportedException:
org.gradle.internal.exceptions.LocationAwareException: Execution failed for
task ':transformClassesAndResourcesWithProguardForRelease'.] from daemon
DaemonInfo{pid=29813, address=[e82dcc9a-972c-49f4-86d8-3322580af398
port:42205, addresses:[/0:0:0:0:0:0:0:1%lo, /127.0.0.1]], idle=false,
context=DefaultDaemonContext[uid=6d0e660b-40fa-40bb-bd5e-8fd469c61b8c,javaHome=/home/ec2-user/jdk1.8.0_45,daemonRegistryDir=/home/ec2-user/.gradle/daemon,pid=29813,idleTimeout=120000,daemonOpts=-XX:MaxPermSize=512m,-XX:+HeapDumpOnOutOfMemoryError,-Xmx2048m,-Dfile.encoding=UTF-8,-Duser.country=US,-Duser.language=en,-Duser.variant]}
(build should be done).
--
You received this message because you are subscribed to the Google Groups
"CodenameOne Discussions" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
Visit this group at https://groups.google.com/group/codenameone-discussions.
To view this discussion on the web visit
https://groups.google.com/d/msgid/codenameone-discussions/ae0fccad-66ba-42ec-b827-5176e4bfac10%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.