Groovy 2.4.9 under Android has java.lang.StackOverflowError

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Groovy 2.4.9 under Android has java.lang.StackOverflowError

William wang
reproduce Environmen:
android studio:
compileSDKversion:API 18: Android 4.3 (Jelly Bean)
minSdk version:API 18: Android 4.3 (Jelly Bean)
Build tool vesion:25.02
Emulator or Mobile phone:google Nexus with android 4.3
main activity is MainActivity.groovy,just simple code not use @CompileStatic

@Override
public void OnCreate(Bundle bundle)
{
super.OnCreate(bundle);
setContentView(R.layout.myhome);
}
run app  this is work.

 if change compileSDKVersion to:API 25(or higher not same as minSdkVersion) : Android 7.1.1 (Nougat)
get app revision  and run the app crash get error,but this app work on android level bigger than API 18:
03-09 14:12:42.595 12449-12449/? E/AndroidRuntime: FATAL EXCEPTION: main
                                                   java.lang.StackOverflowError
                                                       at groovy.lang.MetaClassImpl.getSuperMethodWithCaching(MetaClassImpl.java:1349)
                                                       at groovy.lang.MetaClassImpl.getMethodWithCaching(MetaClassImpl.java:1295)
                                                       at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1065)
                                                       at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:132)
                                                       at test.client.activity.MainActivity.onCreate(MainActivity.groovy:36)
                                                       at java.lang.reflect.Method.invokeNative(Native Method)
                                                       at java.lang.reflect.Method.invoke(Method.java:525)
                                                       at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93)
                                                       at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
                                                       at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1218)
                                                       at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:132)
                                                       at test.client.activity.MainActivity.onCreate(MainActivity.groovy:36)
                                                       at java.lang.reflect.Method.invokeNative(Native Method)
                                                       at java.lang.reflect.Method.invoke(Method.java:525)
                                                       at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93)
                                                       at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
                                                       at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1218)
                                                       at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:132)
                                                       at test.client.activity.MainActivity.onCreate(MainActivity.groovy:36)
                                                       at java.lang.reflect.Method.invokeNative(Native Method)
                                                       at java.lang.reflect.Method.invoke(Method.java:525)
                                                       at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93)
                                                       at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
                                                       at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1218)
                                                       at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:132)
                                                       at test.client.activity.MainActivity.onCreate(MainActivity.groovy:36)
                                                       at java.lang.reflect.Method.invokeNative(Native Method)
                                                       at java.lang.reflect.Method.invoke(Method.java:525)
                                                       at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93)
                                                       at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
                                                       at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1218)
                                                       at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:132)
                                                       at test.client.activity.MainActivity.onCreate(MainActivity.groovy:36)
                                                       at java.lang.reflect.Method.invokeNative(Native Method)
                                                       at java.lang.reflect.Method.invoke(Method.java:525)
                                                       at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93)
                                                       at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
                                                       at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1218)
                                                       at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:132)
                                                       at test.client.activity.MainActivity.onCreate(MainActivity.groovy:36)
                                                       at java.lang.reflect.Method.invokeNative(Native Method)
                                                       at java.lang.reflect.Method.invoke(Method.java:525)
                                                       at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93)
                                                       at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
                                                       at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1218)
                                                       at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:132)
                                                       at test.client.activity.MainActivity.onCreate(MainActivity.groovy:36)
                                                       at java.lang.reflect.Method.invokeNative(Native Method)
                                                       at java.lang.reflect.Method.invoke(Method.java:525)
                                                       at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93)
                                                       at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
                                                       at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1218)
                                                       at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:132)
                                                       at test.client.activity.MainActivity.onCreate(MainActivity.groovy:36)
                                                       at java.lang.reflect.Method.invokeNa
03-09 14:12:42.626 12449-12449/? D/dalvikvm: GC_FOR_ALLOC freed 385K, 8% free 10727K/11616K, paused 27ms, total 27ms