autodeployai / pmml4s

PMML scoring library for Scala
https://www.pmml4s.org/
Apache License 2.0
58 stars 9 forks source link

ExceptionInInitializerError #16

Closed Eyal-Elbaz closed 3 years ago

Eyal-Elbaz commented 3 years ago

Hi, First, I want to thank you for the repo; sounds great. I have tried to insert my model in my android app like this AssetFileDescriptor fileDescriptor = context.getAssets().openFd(MODEL_PATH); FileInputStream stream = fileDescriptor.createInputStream(); Model model = Model.fromInputStream(stream);

but It doesn't work, and I got this :

I have checked the "stream", he is fine.

E/AndroidRuntime: FATAL EXCEPTION: main Process: com.eyalcorp.houses, PID: 13146 java.lang.ExceptionInInitializerError at scala.runtime.Statics$VM.mkHandle(Statics.java:172) at scala.runtime.Statics$VM.(Statics.java:155) at scala.runtime.Statics.releaseFence(Statics.java:148) at scala.collection.immutable.Vector.(Vector.scala:135) at scala.collection.immutable.Vector$.(Vector.scala:83) at scala.collection.immutable.IndexedSeq$.(Seq.scala:114) at scala.collection.immutable.IndexedSeq$.(Seq.scala:114) at scala.package$.(package.scala:64) at scala.Predef$.(Predef.scala:154) at org.pmml4s.xml.ModelBuilder$.(ModelBuilder.scala:175) at org.pmml4s.model.Model$.apply(Model.scala:718) at org.pmml4s.model.Model$.fromInputStream(Model.scala:714) at org.pmml4s.model.Model.fromInputStream(Unknown Source:2) at com.eyalcorp.houses.utils.HouseEstimator.houseEstimate(HouseEstimator.java:20) at com.eyalcorp.houses.houses_assistant.SellHouseChat.start(SellHouseChat.java:49) at com.eyalcorp.houses.houses_assistant.HousesAssistantActivity.lambda$onCreate$3$HousesAssistantActivity(HousesAssistantActivity.java:86) at com.eyalcorp.houses.houses_assistant.-$$Lambda$HousesAssistantActivity$z4cw9-7Kn9328CEJQZj1aS95IoM.run(Unknown Source:8) at com.eyalcorp.houses.houses_assistant.ChatFragment.onViewCreated(ChatFragment.java:62) at androidx.fragment.app.Fragment.performViewCreated(Fragment.java:2987) at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:546) at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:282) at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:112) at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1647) at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:3128) at androidx.fragment.app.FragmentManager.dispatchActivityCreated(FragmentManager.java:3072) at androidx.fragment.app.FragmentController.dispatchActivityCreated(FragmentController.java:251) at androidx.fragment.app.FragmentActivity.onStart(FragmentActivity.java:501) at androidx.appcompat.app.AppCompatActivity.onStart(AppCompatActivity.java:246) at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1435) at android.app.Activity.performStart(Activity.java:8024) at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3475) at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:221) at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:201) at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:173) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7656) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) Caused by: java.lang.NoSuchMethodException: java.lang.invoke.VarHandle.releaseFence [] at java.lang.Class.getMethod(Class.java:2072) at java.lang.Class.getDeclaredMethod(Class.java:2050) at java.lang.invoke.MethodHandles$Lookup.findStatic(MethodHandles.java:782) at scala.runtime.Statics$VM.mkHandle(Statics.java:161) at scala.runtime.Statics$VM.(Statics.java:155)  at scala.runtime.Statics.releaseFence(Statics.java:148)  at scala.collection.immutable.Vector.(Vector.scala:135)  at scala.collection.immutable.Vector$.(Vector.scala:83)  at scala.collection.immutable.IndexedSeq$.(Seq.scala:114)  at scala.collection.immutable.IndexedSeq$.(Seq.scala:114)  at scala.package$.(package.scala:64)  at scala.Predef$.(Predef.scala:154)  at org.pmml4s.xml.ModelBuilder$.(ModelBuilder.scala:175)  at org.pmml4s.model.Model$.apply(Model.scala:718)  at org.pmml4s.model.Model$.fromInputStream(Model.scala:714)  at org.pmml4s.model.Model.fromInputStream(Unknown Source:2)  at com.eyalcorp.houses.utils.HouseEstimator.houseEstimate(HouseEstimator.java:20)  at com.eyalcorp.houses.houses_assistant.SellHouseChat.start(SellHouseChat.java:49)  at com.eyalcorp.houses.houses_assistant.HousesAssistantActivity.lambda$onCreate$3$HousesAssistantActivity(HousesAssistantActivity.java:86)  at com.eyalcorp.houses.houses_assistant.-$$Lambda$HousesAssistantActivity$z4cw9-7Kn9328CEJQZj1aS95IoM.run(Unknown Source:8)  at com.eyalcorp.houses.houses_assistant.ChatFragment.onViewCreated(ChatFragment.java:62)  at androidx.fragment.app.Fragment.performViewCreated(Fragment.java:2987)  at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:546)  at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:282)  at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:112)  at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1647)  at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:3128)  at androidx.fragment.app.FragmentManager.dispatchActivityCreated(FragmentManager.java:3072)  at androidx.fragment.app.FragmentController.dispatchActivityCreated(FragmentController.java:251)  at androidx.fragment.app.FragmentActivity.onStart(FragmentActivity.java:501)  at androidx.appcompat.app.AppCompatActivity.onStart(AppCompatActivity.java:246)  at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1435)  at android.app.Activity.performStart(Activity.java:8024)  at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3475)  at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:221)  at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:201)  at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:173)  at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066)  at android.os.Handler.dispatchMessage(Handler.java:106)  at android.os.Looper.loop(Looper.java:223)  at android.app.ActivityThread.main(ActivityThread.java:7656)  at java.lang.reflect.Method.invoke(Native Method)  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) 

Thanks!

Eyal-Elbaz commented 3 years ago

Sorry I didn't notice the "Attentions"

"You need to use the Scala 2.11 version in Andriod, the Scala core library scala-library of 2.12 and 2.13 depend on the class java.lang.ClassValue that is missing in the java.lang package."