Dependency scope typically includes dependencies as per the current stage of the build. The various Dependency scopes are -
compile - This scope indicates that dependency is available in the classpath of the project. It is the default scope.
provided - This indicates that the dependency is to be provided by JDK or web-Server/Container at runtime.
runtime - This scope tells that you dont need dependency is for compilation but you need it for for execution.
test - This scope states that the dependency is only available for the test compilation and execution phases.
system - This scope indicates that you must provide the system path.
import - This scope is only used when the dependency is of type pom. This scope tells that the specified POM should be replaced with the dependencies in the POM’s <dependencyManagement> section.