6

Я обнаружил, что когда я сохраняю файл .java в Eclipse, это помогает мне переформатировать любые отступы и разрывы строк. Это очень раздражает. Как я могу избежать этого?

5 ответов5

5

Это часть "Очистки кода". Вы можете настроить то, что он делает в Source -> «Очистить ...»

Кроме того, вы также можете настроить форматтер, если вы хотите, чтобы код был отформатирован в целом, но не нравились значения по умолчанию. Чтобы изменить эти настройки, используйте Окно -> Настройки -> Java -> Стиль кода -> Форматтер.

На последней вкладке форматера вы можете определить теги включения / выключения, которые позволяют вам предотвратить переформатирование некоторого кода.

3

Вы должны иметь возможность отключить форматирование, разместив специальный комментарий, например

// @formatting:off
...
// @formatting:on

Это можно изменить в настройках

2

Вы можете отключить Save actions если у вас есть.

Перейдите в « Window > Preferences и выполните « Java > Editor > Save actions . Затем снимите галочку для Perform the selected actions on save .

1

Я думаю, что нашел ответ на свой вопрос.

Project-> Preferences->Java Editor-> Save Action- >uncheck Format source code

Это отключит весь формат исходного кода.

Есть несколько ответов о том, что

Project ->Preferences->Java Code style-> Formatter (disable)
or
Project ->Preferences->Java Code style-> Clean up (disable)

Оба параметра являются только настройками, определяющими форматирование кода. Он по-прежнему будет форматировать исходный код, даже если вы снимите флажок с « Форматтер» и «Очистить», но отметите действие « Редактор Сохранить».

Редактор Java переопределит все настройки исходного кода.

0

См. Https://stackoverflow.com/a/5466000/125617.

Есть еще одно решение, которое вы можете использовать для подавления форматирования комментариев конкретного блока. Используйте /* - (обратите внимание на дефис) в начале комментария к блоку, и форматирование не повлияет на форматирование остальной части файла.

/*-
 * Here is a block comment with some very special
 * formatting that I want indent(1) to ignore.
 *
 *    one
 *        two
 *            three
 */

Источник: http://java.sun.com/docs/codeconv/html/CodeConventions.doc4.html


Всё ещё ищете ответ? Посмотрите другие вопросы с метками .