Using the maven-shade-plugin
Sometimes, you don’t have spring boot (to automatically repackage your jar thanks to the spring-boot-maven-plugin) and still you have to provide an all-in-one jar. The maven-shade plugin is made for that. It can be tricky to find the appropriate configuration for it. Find after my boilerplate configuration: Notice the transformers, helping to keep consistency by merging registry files necessary for spring to find its classes and implementations, and excludes to strip the signed jars artifacts, to avoid checksum error at loading time.