On a fresh checkout of ECJ from github (as of today), I'm running the spea2 package using this command:

java -cp bin ec.Evolve -file src/ec/app/moosuite/zdt1.params

In moosuite.params, I have this:

parent.0 = spea2.params
#parent.0 = nsga2.params

Here is the null pointer exception that happens:

Exception in thread "main" java.lang.NullPointerException
at ec.multiobjective.spea2.SPEA2Breeder.setup(
at ec.EvolutionState.setup(
at ec.simple.SimpleEvolutionState.startFresh(
at ec.Evolve.main(

It doesn't seem to be setting up the population properly.

The same command works when I change moosuite.params to use nsga2 instead, like this:

#parent.0 = spea2.params
parent.0 = nsga2.params

Thanks for any help you can provide.  Meanwhile, I will continue to troubleshoot the problem.