What is the difference between the maven scope compile and provided when artifact is built as a JAR? If it was WAR, I\'d understand - the artifact
compile
provided
If you're planning to generate a single JAR file with all of its dependencies (the typical xxxx-all.jar), then provided scope matters, because the classes inside this scope won't be package in the resulting JAR.
See maven-assembly-plugin for more information