BMAD-METHOD/expansion-packs/bmad-java/tasks/maven-migration.md

2.7 KiB

Maven Migration Task

Purpose

Migrate an existing Java project from an older build system (Ant, Gradle, Ivy) to Maven. Handles build system migration, dependency management, build automation, and CI/CD integration.

When to Use

  • Migrating from Ant to Maven
  • Migrating from Gradle to Maven
  • Migrating from Ivy to Maven
  • Standardizing build systems across projects
  • Improving dependency management

Input Requirements

  • Current build system details
  • Project dependencies and versions
  • Current build scripts and configuration
  • CI/CD pipeline configuration
  • Team preferences and requirements
  • AWS deployment requirements

Process Steps

1. Current Build System Analysis

  • Analyze current build scripts and configuration
  • Document all dependencies and versions
  • Identify build processes and workflows
  • Assess CI/CD integration requirements
  • Evaluate team expertise and preferences
  • Plan migration strategy

2. Maven Project Structure Creation

  • Create Maven project structure
  • Set up source directories
  • Set up test directories
  • Create package structure
  • Initialize Maven configuration
  • Set up Maven wrapper

3. Dependency Migration

  • Migrate dependencies to Maven format
  • Configure Maven coordinates
  • Set up dependency management
  • Resolve dependency conflicts
  • Configure repositories
  • Test dependency resolution

4. Build Configuration

  • Create pom.xml with proper configuration
  • Configure Maven plugins
  • Set up build profiles
  • Configure compiler settings
  • Set up testing configuration
  • Configure packaging and deployment

5. CI/CD Integration

  • Update CI/CD pipeline for Maven
  • Configure build triggers
  • Set up test execution
  • Configure artifact publishing
  • Set up deployment automation
  • Test CI/CD integration

6. AWS Integration

  • Configure AWS CodeBuild for Maven
  • Set up AWS CodePipeline integration
  • Configure artifact storage
  • Set up deployment automation
  • Configure monitoring integration
  • Test AWS integration

Output Deliverables

  • Complete Maven project structure
  • Configured pom.xml with all dependencies
  • Updated CI/CD pipeline configuration
  • AWS integration configuration
  • Migration documentation
  • Team training materials

Success Criteria

  • Maven build system working correctly
  • All dependencies managed through Maven
  • Build automation functioning
  • CI/CD pipeline integrated with Maven
  • AWS services integrated with Maven build
  • Team trained on Maven best practices

Dependencies

  • Maven 3.9+ installed
  • Java 21 JDK installed
  • IDE with Maven support
  • CI/CD platform access
  • AWS account access

Tools and Resources

  • Maven build tool
  • Maven plugins
  • CI/CD platform tools
  • AWS CLI and tools
  • IDE with Maven integration
  • Documentation and training materials