4 ms·
Strong agree. The thing about Maven is that it requires us to build a project model, then it executes the model. That means it's possible to reason about what
by andrewaylett 6y ago
Strong agree. The thing about Maven is that it requires us to build a project model, then it executes the model. That means it's possible to reason about what will happen based off the completed model. It doesn't matter whether the model is encoded in XML or generated in code: the important bit is that we (and our tooling) can inspect the model.
Gradle _almost_ does the same, but it allows execution of arbitrary code in too many places -- like with parsing Perl, we can't discover the model without also executing it. Hence the trap.