Ah, in that case you will indeed have to use rule-based configuration, as the Play plugin is built on that.
Correct.
It’s Project#configure
and just a convenience method to apply the same closure to several objects. In this case I wanted to do the same thing to both main and test.
I don’t know what you mean by “default” and “main” in that sentence. We need to make sure that everything your entities need transitively is also visible to the code that uses your entities. That’s why compile
needs to extend entitiesCompile
.
There will be an in-depth blog post about this decision soon. The short answer is that many of the benefits can be achieved with the “old” model too. And the migration path for people with large builds is just too hard. That’s why we decided to take a step back and instead evolve the old model. In the long run, this might lead to a solution that incorporates many ideas like the rule engine, but in a more incremental way that makes migration easier.
We will of course keep supporting the Play and Native ecosystems that are already built on top of the software model.
You’re welcome