Программный рефакторинг Java

В рамках ребрендинга у нас произошло изменение названия в одном из наших крупных проектов.

Есть ли способ, позволяющий мне программно реорганизовать мою базу кода Java (переименовать класс и пакет) с помощью eclipse/других инструментов?


person Kannan Ramamoorthy    schedule 13.06.2018    source источник
comment
Чтобы уточнить, вы ищете альтернативу простому использованию функции Eclipse Refactor › Rename...?   -  person skomisa    schedule 15.06.2018
comment
да. Наш проект огромный, с множеством пакетов и классов. Рефакторинг каждого класса/пакета не является масштабируемым способом.   -  person Kannan Ramamoorthy    schedule 15.06.2018
comment
OK. Итак, у вас есть много изменений имен, которые нужно внести в огромный проект, и по логистическим причинам вы хотели бы, чтобы они выполнялись за один проход, если это возможно, а не применяли изменения по одному?   -  person skomisa    schedule 15.06.2018
comment
@komisa да. Представьте, что это можно сделать программным способом.   -  person Kannan Ramamoorthy    schedule 15.06.2018
comment
Возможно, этот довольно старый пост SO поможет, если вы заинтересованы в написании кода самостоятельно: Как программно переименовать метод с помощью JDT   -  person skomisa    schedule 15.06.2018


Ответы (1)


Eclipse имеет способ сохранения рефакторинга, который вы применяете в файле XML, и дает вам возможность воспроизвести этот скрипт позже, см. https://help.eclipse.org/neon/index.jsp?topic=%2Forg.eclipse.jdt.doc.user%2Fconcepts%2Fconcept-refactoring.htm.

Не так сложно написать этот скрипт вручную, особенно если вы просто переименовываете код (рефакторинг в теле метода требует гораздо более подробной информации).

person Volker Stolz    schedule 06.02.2019