一.配置jdk1.8和配置阿里镜像 仓库
<!-- 局部jdk配置,pom.xml中 -->
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
<!-- 全局jdk配置,settings.xml -->
<profile>
<id>jdk18</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
配置阿里镜像
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
配置本地仓库
<localRepository>E:\JetBrains\repository</localRepository>
二.scope
compile(默认)
表示当前依赖参与项目的编译、测试和运行阶段,属于强依赖。打包到包里;
test
表示当前依赖仅仅参与测试相关的内容,包括测试用例的编译和执行;
runtime
表示当前依赖仅参与运行周期中的使用,一般为接口与实现相分离的类库。常见的依赖类似JDBC类库,在编译之时仅依赖相关的接口,在具体的运行之时,才需要具体的数据库驱动程序,此类的驱动都是为runtime的类库;
provided
表示当前依赖在打包过程中,不需要打进去,这个由运行的环境来提供。在编译测试阶段,需要这个artifact对应的jar包在classpath中,而在运行阶段,假定目标的容器已经提供了这个jar包;
system
使用上与provided相同,不同之处在于该依赖不从maven仓库中提取,而是从本地文件系统中提取;
import
import只能在dependencyManagement的中使用,能解决maven单继承问题,import依赖关系实际上并不参与限制依赖关系的传递性。