|
|
|
|
|
|
|
🚀 Repository for automated Java code migration research, part of the MigrationBench project.
This repository contains two sub-packages to conduct Java code migration with LLMs:
1. 🤖 JavaMigrationAgent
JavaMigrationAgent is an LLM-based agent to automate Java 8 to Java 17 (21) migration, built on top of the Strands Agents framework.
- It supports multiple migration strategies including baseline, PE (prompt engineering), RAG, and a hybrid approach (More cost effective).
2. 🔧 SDFeedback
SDFeedback runs code migration implementation with LLMs by providing self debugging feedback, motivated by the Teaching Large Language Models to Self-Debug paper.
- It includes both single-job and batch processing capabilities with AWS EMRS support.
Agent trajectories and execution results are stored in the data/ folder.
@misc{liu2025migrationbenchrepositorylevelcodemigration,
title={MigrationBench: Repository-Level Code Migration Benchmark from Java 8},
author={Linbo Liu and Xinle Liu and Qiang Zhou and Lin Chen and Yihan Liu and Hoan Nguyen and Behrooz Omidvar-Tehrani and Xi Shen and Jun Huan and Omer Tripp and Anoop Deoras},
year={2025},
eprint={2505.09569},
archivePrefix={arXiv},
primaryClass={cs.SE},
url={https://arxiv.org/abs/2505.09569},
}