Как правильно переименовать пакет в Eclipse с помощью Subversive? - PullRequest
4 голосов
/ 21 августа 2009

Недавно я обнаружил некоторые проблемы, когда пытался переименовать пакет в проекте Java с помощью Eclipse. Я использую Subversive для интеграции SVN.

Если я переименую пакет через Refactor -> Rename, фиксация завершится неудачей.

Я должен переименовать его несколько странным образом:

  1. Создать новый пакет как новую пустую папку
  2. Выберите все классы для переименования
  3. щелкните правой кнопкой мыши -> Команда -> Переключить
  4. Введите новый путь.

После коммита переименование сделано, но очень некрасиво.

Как это сделать лучше?

Ответы [ 3 ]

4 голосов
/ 21 августа 2009

Когда вы читаете Subversive документацию по Рефакторинг , у вас появляется это предупреждение:

Во время рефакторинга, структура версионной папки изменяется, поэтому, если она не обновлена, конфликт при фиксации неизбежен Поэтому пользователь должен быть уверен, что он обновил рефакторинг ресурса до версии расположения хранилища.
Помните, что папка считается устаревшей, даже если в репозитории изменен только ее номер редакции.

Он должен работать из Eclipse, но вам нужен обновленный ресурс.

4 голосов
/ 04 августа 2012

Нико прав. Вот что я делаю, когда хочу переименовать файл в проекте в Subclipse (subversion для Eclipse):

  1. Перейдите в репозитории SVN и переименуйте / переместите ресурс.
  2. в перспективе проекта, щелкните правой кнопкой мыши недавно переименованный файл и выберите «Команда», «Обновить до руководителя». Предыдущее имя файла исчезнет с экрана, но не волнуйтесь.
  3. Щелкните правой кнопкой мыши «Команда», «Синхронизировать с репозиторием», и откроется перспектива Синхронизировать.
  4. Щелкните правой кнопкой мыши на правильно названном ресурсе и выберите «Обновить». это все
3 голосов
/ 21 августа 2009

Вы должны сначала переименовать / переместить пакет в SVN (щелкните правой кнопкой мыши в SVN Explorer). затем вы обновляете все классы (вы получите сообщение об ошибке для каждого класса, который вы можете щелкнуть правой кнопкой мыши и решить)

...