Стратегии массовой миграции большой базы кода Java/JAR и ее собственных зависимостей на Node.js/TypeScript.JAVA

Программисты JAVA общаются здесь
Anonymous
Стратегии массовой миграции большой базы кода Java/JAR и ее собственных зависимостей на Node.js/TypeScript.

Сообщение Anonymous »

В настоящее время у нас есть приложение Node.js, которое делегирует определенные задачи приложению Java (через файл .jar). У нас есть полный исходный код Java для этого .jar.
В настоящее время мы переводим нашу систему, чтобы предоставить эти функции как «навыки» для агента ИИ в рамках агентского рабочего процесса. Чтобы поддерживать единую среду выполнения и упростить контекст агента, нам необходимо преобразовать весь этот путь выполнения Java в собственный TypeScript.
Проблема Кодовая база Java довольно велика и в значительной степени зависит от сложного дерева собственных внутренних зависимостей. Поскольку это не публичные библиотеки, мы не можем просто заменить их эквивалентными пакетами npm; сами зависимости также должны быть переведены с Java на TypeScript.
Чего мы хотим избежать Мы хотим избежать чисто ручного, пофайлового перевода LLM (например, копирования и вставки отдельных классов в LLM), поскольку он очень подвержен ошибкам, теряет межфайловый контекст и не масштабируется для глубоких деревьев зависимостей.
Вопросы Учитывая масштаб проекта и необходимость сохранения бизнес-логики в проприетарных зависимостях:
  • AST и транспиляция: Существуют ли устоявшиеся подходы к абстрактному синтаксическому дереву (AST) или конвейеры транспиляции (например, JSweet, но для современных сред Node/TS), которые очень эффективны для массового преобразования Java в TS при работе с внутренними зависимостями?
  • Шаблоны автоматической миграции. Каков рекомендуемый архитектурный шаблон или рабочий процесс для организации автоматизированной программной миграции базы кода Java на TypeScript с сохранением существующей структуры и ссылок проекта?
  • Агентные рабочие процессы: При использовании автоматизированного сценария с поддержкой LLM (например, с использованием агентной платформы, разработанной для рефакторинг), как мы можем лучше всего передать сложный граф зависимостей Java в синтаксический анализатор, чтобы обеспечить правильное выравнивание результирующих типов TypeScript и импорта?
Мы будем очень признательны за любые идеи о систематических, масштабируемых подходах для этого типа межъязыковой миграции.

Вернуться в «JAVA»