At the moment, Scalastyle doesn't run when maven is executed - it needs to be executed explicitly. On the one hand this is done to abort the build as fast as possible, on the other hand I didn't manage to get it to correctly work as a build goal. When I activated it as a build goal it is executed for each subproject separately as well as at the beginning of the build process of the complete project. This means each project is tested twice and I didn't find a way to change it. Moving the goals to the subprojects lead to the problem that Scalastyle couldn't find its configuration anymore because the root path changed (here as well all my tries to refer to the root build didn't work).

I must say I don't completely understand the maven build yet, that's probably the reason why I didn't get it to work as it should. But if you want to have Scalastyle to work for all maven commands I can investigate further.

Nevertheless, I think the current approach is optimal. For the main build process Scalastyle is executed and at any time it can be executed manually. For local maven builds I don't think it is necessary to always execute it (at least for me I only execute maven directly to test things).