[check] Java error: Invalid method Code length ... in class file org/python/pycode/... (script too large)

Bug #1216780 reported by RaiMan
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
SikuliX
In Progress
Medium
RaiMan

Bug Description

***** problem is caused by a Java implementation limit:

A compiled class file cannot be larger than 64 KB.

Since internally when running a script, this is compiled into a class file, and might be too large.

I will try to find some assistance help for a scripter, to know, when his stuff is too large.

So you have to divide your script into smaller packages and use import

-----------------------------------------------------------------------------

I wrote a 500 line sikuli script to play baccarat on an online casino.
The script was working fine so I decided to add some conditional statements to handle specific events in the game.
I added an additional 2500 lines of code and when I run it I get the following error - what does it mean ?

[error] script [ casino.com] stopped with error at line --unknown--
[error] Could not evaluate error source nor reason. Analyze StackTrace!
[error] java.lang.ClassFormatError: Invalid method Code length 93997 in class file org/python/pycode/_pyx376
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at org.python.core.BytecodeLoader$Loader.loadClassFromBytes(BytecodeLoader.java:119)
at org.python.core.BytecodeLoader.makeClass(BytecodeLoader.java:37)
at org.python.core.BytecodeLoader.makeCode(BytecodeLoader.java:67)
at org.python.compiler.LegacyCompiler$LazyLegacyBundle.loadCode(LegacyCompiler.java:43)
at org.python.core.CompilerFacade.compile(CompilerFacade.java:34)
at org.python.core.Py.compile_flags(Py.java:1717)
at org.python.core.Py.compile_flags(Py.java:1722)
at org.python.core.Py.compile_flags(Py.java:1732)
at org.python.core.__builtin__.execfile_flags(__builtin__.java:514)
at org.python.util.PythonInterpreter.ex

ecfile(PythonInterpreter.java:225)
at org.sikuli.script.SikuliScriptRunner.runPython(Unknown Source)
at org.sikuli.ide.SikuliIDE$ButtonRun.runPython(Unknown Source)
at org.sikuli.ide.SikuliIDE$ButtonRun$1.run(Unknown Source)

java.lang.ClassFormatError: java.lang.ClassFormatError: Invalid method Code length 93997 in class file org/python/pycode/_pyx376

RaiMan (raimund-hocke)
description: updated
Changed in sikuli:
status: New → In Progress
importance: Undecided → Medium
assignee: nobody → RaiMan (raimund-hocke)
milestone: none → 1.1.0
RaiMan (raimund-hocke)
Changed in sikuli:
milestone: 1.1.0 → 1.2.0
RaiMan (raimund-hocke)
summary: - [1.0.1] Java error: Invalid method Code length ... in class file
+ [check] Java error: Invalid method Code length ... in class file
org/python/pycode/... (script too large)
Changed in sikuli:
milestone: 2.0.0 → 2.1.0
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Related questions

Remote bug watches

Bug watches keep track of this bug in other bug trackers.