java-maven

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Java Maven Skill

Java Maven 技能

Master Apache Maven for Java project builds and dependency management.
精通Apache Maven,用于Java项目构建与依赖管理。

Overview

概述

This skill covers Maven configuration including POM structure, lifecycle phases, plugin configuration, dependency management with BOMs, and multi-module projects.
本技能涵盖Maven配置,包括POM结构、生命周期阶段、插件配置、使用BOM进行依赖管理以及多模块项目。

When to Use This Skill

何时使用本技能

Use when you need to:
  • Configure Maven POM files
  • Manage dependencies with BOMs
  • Set up build plugins
  • Create multi-module projects
  • Troubleshoot build issues
当你需要以下操作时使用:
  • 配置Maven POM文件
  • 使用BOM管理依赖
  • 设置构建插件
  • 创建多模块项目
  • 排查构建问题

Quick Reference

快速参考

xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.example</groupId>
    <artifactId>my-app</artifactId>
    <version>1.0.0-SNAPSHOT</version>

    <properties>
        <java.version>21</java.version>
        <maven.compiler.source>${java.version}</maven.compiler.source>
        <maven.compiler.target>${java.version}</maven.compiler.target>
    </properties>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>3.2.1</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-enforcer-plugin</artifactId>
                <version>3.4.1</version>
            </plugin>
        </plugins>
    </build>
</project>
xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.example</groupId>
    <artifactId>my-app</artifactId>
    <version>1.0.0-SNAPSHOT</version>

    <properties>
        <java.version>21</java.version>
        <maven.compiler.source>${java.version}</maven.compiler.source>
        <maven.compiler.target>${java.version}</maven.compiler.target>
    </properties>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>3.2.1</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-enforcer-plugin</artifactId>
                <version>3.4.1</version>
            </plugin>
        </plugins>
    </build>
</project>

Lifecycle Phases

生命周期阶段

validate → compile → test → package → verify → install → deploy
validate → compile → test → package → verify → install → deploy

Useful Commands

实用命令

bash
mvn dependency:tree                    # View dependencies
mvn dependency:analyze                 # Find unused/undeclared
mvn versions:display-dependency-updates  # Check updates
mvn help:effective-pom                 # View effective POM
mvn -B verify                          # Batch mode build
bash
mvn dependency:tree                    # 查看依赖
mvn dependency:analyze                 # 查找未使用/未声明的依赖
mvn versions:display-dependency-updates  # 检查更新
mvn help:effective-pom                 # 查看有效POM
mvn -B verify                          # 批量模式构建

Troubleshooting

故障排查

ProblemSolution
Dependency not foundCheck repository, version
Version conflictUse BOM or enforcer
Build OOMSet MAVEN_OPTS=-Xmx1g
问题解决方案
依赖未找到检查仓库、版本
版本冲突使用BOM或enforcer插件
构建内存溢出设置MAVEN_OPTS=-Xmx1g

Usage

使用方法

Skill("java-maven")
Skill("java-maven")