scope代表此类库与项目的关系, 默认是compile,也就是编译和打包都需要此类库。test表示仅仅在单元测试的时候需要;provided表示在编译阶段需要此类库,但打包阶段不需要,这是因为项目的目标环境已经提供了;runtime表示在编译和打包的时候都不需要,但在运行的时候需要,比如某个指定的数据库驱动,编译和打包都不需要,但测试应用要连到数据库时就需要此数据库驱动。