Okay, now I think I understand. I see that in ECJ 25, changing app/moosuite/moosuite.params to use spea2 causes the various examples (zdt1, etc) to issue a NullPointerException in SPEA2Breeder.setup(). You attempted to fix the bug in SPEA2Breeder, and that is when you started receiving the ArrayIndexOutOfBoundsException. You also note that the kur-spea2 objective is broken.
The SPEA2Breeder bug is part of a suite of bugs that ECJ 25 introduced as we moved from representing populations as arrays to ArrayLists. We believe we have fixed most of these bug in the development version of ECJ
, and we don't know of any current bugs with SPEA2, though we are still verifying the affected algorithms (see this issue
The kur-spea2 bug is known
but not yet fixed—we were holding off because we thought we wanted to reorganize how all the moosuite examples work. That might not happen anymore, though, so I'll try and commit a fix to kur-spea2 later this morning.