# Maven学习

# maven生命周期

项目构建时需要怎么操作等等

# dependency的scope属性

scope有5个值:

scope 释义
compile 缺省值,适用所有阶段,会随项目一起打包
provided 类似compile,在编译范围和测试范围可用,但不会随项目打包
runtime 编译不需要,但运行时需要,会随项目打包
test 只应用于测试范围
system 类似provided,但必须显式指定包含jar,不会去仓库lookup
import 只能用于dependencyManagement中,用于导入package为pom的依赖管理

# maven配置

# 配置本地repository位置

修改conf文件中的settings.xml配置 修改<settings>标签内容如下:

<settings>   
  <localRepository>D:\my_code\maven_repository</localRepository>   
</settings> 

# 配置国内镜像仓库(阿里)

同样修改conf中的settings.xml配置 修改<mirrors>标签内容如下:

<mirrors>
    <id>nexus-aliyun</id>
    <mirrorOf>central</mirrorOf>
    <name>Nexus aliyun</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirrors>

上面是全局配置,如果需要配置单个项目则按照如下配置(会覆盖全局配置):

<repositories>
    <repository>
        <id>central</id>
        <name>aliyun maven</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
        <layout>default</layout>
        <!-- 是否开启发布版构件下载 -->
        <releases>
            <enabled>true</enabled>
        </releases>
        <!-- 是否开启快照版构件下载 -->
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </repository>
</repositories>

# 如何使用maven分析依赖树

$ mvn dependency:tree
修改于: 8/11/2022, 3:17:56 PM