🔍 Compare Maven dependency conflicts between Git branches to identify changes introduced by feature branches.
This plugin analyzes how your feature branch changes affect Maven dependency resolution by comparing conflicts between your current branch and a base branch. Perfect for understanding dependency impacts before merging.
Key Benefits:
- 🌿 Branch Comparison - Compare conflicts between any two branches
- 📊 Detailed Analysis - Shows conflict counts and details
- 🚀 CI/CD Ready - Easy integration with build pipelines
- ⚙️ Configurable - Flexible configuration options
Prerequisites: Java 8+, Maven 3.6.3+, Git repository
-
Install the plugin:
git clone https://github.com/aezo/conflict-diff-maven-plugin.git cd conflict-diff-maven-plugin mvn clean install -
Run analysis in your project:
cd /path/to/your/maven/project mvn com.github.aezo:conflict-diff-maven-plugin:1.0.0-SNAPSHOT:analyze -Dconflict-diff.baseBranch=main -
Optional - Add plugin group to
~/.m2/settings.xmlfor shorter commands:<pluginGroups> <pluginGroup>com.github.aezo</pluginGroup> </pluginGroups>
Then use:
mvn conflict-diff:analyze -Dconflict-diff.baseBranch=main
# Compare current branch with main
mvn conflict-diff:analyze -Dconflict-diff.baseBranch=main
# Enable debug output
mvn conflict-diff:analyze -Dconflict-diff.debug=true
# Multi-module projects - specific modules
mvn conflict-diff:analyze -pl module1,module2baseBranch- Branch to compare against (default:develop)debug- Enable verbose output (default:false)skipConflictDiff- Skip plugin execution (default:false)
💡 For detailed configuration, examples, and CI/CD integration: PLUGIN-USAGE.md
Prefer command-line tools? Use the included bash script:
chmod +x scripts/mvn-conflict-diff
export PATH="${PATH}:/path/to/scripts/mvn-conflict-diff"
mvn-conflict-diffPlugin not found? Use full coordinates:
mvn com.github.aezo:conflict-diff-maven-plugin:1.0.0-SNAPSHOT:analyzeWrong default branch? Specify your branch:
mvn conflict-diff:analyze -Dconflict-diff.baseBranch=main💡 More troubleshooting: PLUGIN-USAGE.md
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit changes (
git commit -m 'Add amazing feature') - Push to branch (
git push origin feature/amazing-feature) - Open a Pull Request
Development:
git clone https://github.com/your-username/conflict-diff-maven-plugin.git
cd conflict-diff-maven-plugin
mvn clean installLicensed under the terms in LICENSE file.