Ответ 1
Theres a вопрос о SC, который посвящен массивному рефакторингу в java. Лучший ответ заключается в использовании japvaparser и внедрении посетителя для фактического рефакторинга. Это не должно быть так много для простого переименования.
Я работаю в довольно большом Java-проекте (2500+ классов), который использует старый стандарт кода, где все переменные-члены имеют префикс "m_" (например, m_temperature). Для этого больше нет причин, и я бы хотел избавиться от них, но:
Первый наивный подход простого переименования всех "m_variable" в "переменную" не будет достаточным, поскольку это может вызвать коллизии имен между уже существующей переменной с именем "variable" и недавно переименованной.
Итак, подведем итог: Как переименовать все эти отвратительные элементы variablest, не вдаваясь в проблемы, и есть ли больше проблем, чем упомянутые выше?
Да, я знаю функции рефакторинга/переименования в среде IDE,, пожалуйста, помните, что я хочу делать изменения ко всем переменным, соответствующим критериям сразу, а не по щелчку правой кнопкой мыши на переменные и переименовывая их один за другим.
Theres a вопрос о SC, который посвящен массивному рефакторингу в java. Лучший ответ заключается в использовании japvaparser и внедрении посетителя для фактического рефакторинга. Это не должно быть так много для простого переименования.
Как насчет ниже: массовое переименование переменных Java
by Simulant
нажмите на имя переменной.
1: нажмите [alt] + [shift] + [R]
2: введите новое имя.
3: нажмите [enter] для подтверждения.
- > все экземпляры этой переменной будут переименованы.
Чтобы ответить на второй вопрос (есть ли еще проблемы)
Я понимаю, что оба из них являются потенциально значимыми проблемами в существующем проекте. Но стоит посмотреть, чтобы определить возможные точки боли и работать над ними в первую очередь.
В этом случае поможет инструмент рефакторинга. Когда вы переименуете переменную, она переименует ее во всех зависимых местах, в том числе, если она вызывается в другом файле класса. При этом он будет предупреждать вас, если ваша переименованная переменная совпадает с уже существующим именем.
Однако мы должны делать это вручную для каждой переменной.
Я не знаю, может ли это работать. Но я нахожу эту ссылку, чтобы найти и заменить все происшествия в проекте с помощью IntelliJ.
http://www.jetbrains.com/idea/webhelp/finding-and-replacing-text-in-project.html
Если вы используете eclispe
IDE, вы можете сделать это легко.
Шаги:
даже в netbeans
вы можете следовать тем же самым шагам.
IDE находит ссылку и использует и заменяет все это.