Maven常用命令

# Maven常用命令

# Maven 查看目录信息

# 查看本地仓库位置

命令

mvn help:evaluate -Dexpression=settings.localRepository -q -DforceStdout
1
  • 作用:直接输出 Maven 本地仓库的路径。
  • 参数说明
    • -Dexpression=settings.localRepository:指定查询的表达式。
    • -q(quiet):简化日志输出,仅保留必要信息。
    • -DforceStdout:强制将结果输出到标准输出(默认可能包含其他日志)。

# Maven 依赖树输出整理

Maven Dependency Tree:深入理解你的项目依赖 (opens new window)

# 1. 生成依赖树并输出到控制台

命令

mvn dependency:tree -Dverbose -Dincludes=groupId:artifactId -DforceStdout
1
  • 作用:过滤并显示特定依赖树形结构。
  • 参数说明
    • -Dverbose:打印更详细的信息,包括每个依赖的确切来源、范围以及其他相关信息。
    • -Dincludes=groupId:artifactId:指定依赖的 groupIdartifactId,支持通配符(*)。
    • -DforceStdout:确保结果直接输出到控制台。

示例

# 查找 spring-security-config 依赖
mvn dependency:tree -Dincludes=org.springframework.security:spring-security-config -DforceStdout

# 查找所有 artifactId 为 boot 的依赖
mvn dependency:tree -Dincludes=:boot -DforceStdout
1
2
3
4
5

注意-Dincludes 的格式为 groupId:artifactId,省略部分表示通配。例如 :boot 表示匹配任意 groupIdartifactIdboot 的依赖。


# 2. 输出依赖树到文件

# 方法 1:Shell 重定向(>>>
# 覆盖写入文件
mvn dependency:tree -Dincludes=org.springframework.security:spring-security-config > 文件路径.txt

# 追加到文件末尾
mvn dependency:tree -Dincludes=org.springframework.security:spring-security-config >> 文件路径.txt
1
2
3
4
5
  • 区别
    • >:覆盖文件内容。
    • >>:追加内容到文件末尾。
  • 适用场景:快速保存输出结果,适合简单文本写入。
# 方法 2:使用 -DoutputFile 参数
mvn dependency:tree -Dincludes=org.springframework.security:spring-security-config -DoutputFile=文件路径.txt
1
  • 优点
    • 直接由 Maven 控制输出格式,避免编码或换行符问题。
    • 适合处理复杂内容(如特殊字符、多语言路径)。
  • 路径规范建议:若路径含空格或特殊字符,使用引号包裹(如 -DoutputFile="C:\路径\file.txt")。

# 3. 方法对比

方法 优点 注意事项
Shell 重定向 简单快捷,无需额外参数 可能受控制台编码影响,导致文件乱码
-DoutputFile 输出稳定,支持复杂路径和字符 需确保插件版本支持该参数(通常无兼容性问题)

总结

  • 优先使用 -DoutputFile 输出到文件,确保格式一致性。
  • 临时查看少量内容时,可结合 -DforceStdout 和 Shell 重定向。
上次更新时间: 5/20/2025, 7:41:16 AM