关于 java-maven-gradle
java-maven-gradle 是面向 Java 开发者的构建工具技能,涵盖 Maven 和 Gradle 项目配置、依赖管理及 CI/CD。内容包括多模块构建、缓存优化和 GitHub Actions 集成示例。
主要功能
- 01Maven 依赖与插件配置
- 02Gradle Kotlin DSL 与目录
- 03多模块及复合构建
- 04构建缓存与性能优化
- 05GitHub Actions 流水线配置
适用场景
- 01初始化 Maven 或 Gradle 项目
- 02通过 BOM 管理依赖版本
- 03排查依赖冲突与构建问题
- 04配置带缓存的 CI/CD 流水线
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ pluginagentmarketplace/ custom-plugin-java --skill java-maven-gradle安装后在 Claude Code 中输入/java-maven-gradle确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
assets/config.yamlschema.jsonreferences/GUIDE.mdPATTERNS.mdscripts/validate.py详细介绍
Java Maven Gradle 技能
掌握 Java 构建工具,高效管理项目并集成 CI/CD。
概述
本技能涵盖 Maven 和 Gradle 配置,包括依赖管理、插件设置、多模块项目和 CI/CD 流水线集成。遵循这两种工具在 2024-2025 年的最佳实践。
何时使用此技能
在以下情况下使用:
- 设置 Maven/Gradle 项目
- 使用 BOM 管理依赖
- 配置构建插件
- 优化构建性能
- 设置 CI/CD 流水线
涵盖主题
Maven
- POM 结构和继承
- 使用 BOM 管理依赖
- 插件配置
- 配置文件和属性
- 多模块项目
Gradle
- Kotlin DSL (build.gradle.kts)
- 依赖目录
- 任务配置
- 构建缓存优化
- 组合构建
CI/CD 集成
- GitHub Actions 工作流
- 依赖缓存
- 矩阵构建
- 制品发布
快速参考
Maven POM
<?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>
<spring-boot.version>3.2.1</spring-boot.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>${spring-boot.version}</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>
Gradle Kotlin DSL
// build.gradle.kts
plugins {
java
id("org.springframework.boot") version "3.2.1"
id("io.spring.dependency-management") version "1.1.4"
}
java {
toolchain {
languageVersion = JavaLanguageVersion.of(21)
}
}
dependencies {
implementation("org.springframework.boot:spring-boot-starter-web")
testImplementation("org.springframework.boot:spring-boot-starter-test")
}
tasks.test {
useJUnitPlatform()
maxParallelForks = Runtime.getRuntime().availableProcessors() / 2
}
版本目录 (libs.versions.toml)
[versions]
spring-boot = "3.2.1"
junit = "5.10.1"
[libraries]
spring-boot-starter-web = { module = "org.springframework.boot:spring-boot-starter-web", version.ref = "spring-boot" }
junit-jupiter = { module = "org.junit.jupiter:junit-jupiter", version.ref = "junit" }
[plugins]
spring-boot = { id = "org.springframework.boot", version.ref = "spring-boot" }
CI/CD 模板
# .github/workflows/ci.yml
name: CI
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'temurin'
cache: 'maven' # or 'gradle'
- run: ./mvnw -B verify
常用命令
# Maven
mvn dependency:tree
mvn versions:display-dependency-updates
mvn help:effective-pom
# Gradle
gradle dependencies
gradle dependencyInsight --dependency log4j
gradle build --scan
故障排查
常见问题
| 问题 | 原因 | 解决方案 |
|---|---|---|
| 找不到依赖 | 版本错误 | 检查 Maven Central |
| 版本冲突 | 传递依赖 | 使用 BOM 或 enforcer |
| 构建时内存溢出 | 堆太小 | 设置 MAVEN_OPTS |
| 构建缓慢 | 未启用缓存 | 启用构建缓存 |
调试检查清单
□ Check effective POM/build
□ Analyze dependency tree
□ Verify repository order
□ Check plugin versions
□ Review build cache
用法
Skill("java-maven-gradle")
相关技能
java-maven- Maven 专用java-gradle- Gradle 专用
评论
支持 Markdown