How can I create an executable JAR with dependencies using Maven?

I want to package my project in a single executable JAR for distribution. How can I make Maven package all dependency JARs into my JAR?

and you run it with

Compile goal should be added before assembly:single or […]