We use Checkstyle for all of our Java projects to perform the linting. The setup was very easy and there are amazing integrations into all IDEs. What also came in very handy was that we could start off with just a basic set of rules and tighten the linting-rules step-by-step, continously improving the readability and uniformity of our codebase.