2015-03-10 4 views
0

где я работаю, мы используем тот же стиль кода для eclipse в команде, и кроме того, у нас есть работа SonarQube, чтобы найти ошибки стиля (и многое другое). Мы заметили проблему с нашим макс. длина линии, которая устанавливается в 140 символов:Eclipse Formatter: перенос строк для имен методов не работает?

http://i.imgur.com/7pgliqp.png

Eclipse, не обернуть наши методы и конструкторы, и у нас есть несколько, которые являются более чем 140 символов. Это просто проблема красоты, но мне было бы неплохо избавиться от сотен проблем в SonarQube.

Я искал ошибку в googled и нашел несколько записей об ошибках на https://bugs.eclipse.org, но большинство из них очень старые. У кого-нибудь есть обходное решение или решение?

Затмение Luna Release (4.4.0)
Ubuntu 14,04

редактировать:
Хорошо, я сделал некоторые испытания. Похоже, что длина строки является проблемой, когда открывающая скобка является единственным символом, превышающим 140 символов. Поэтому, если закрывающая скобка для параметров - это 139-й символ и открывающая скобка для метода 141 char, то она не будет обертывать линию.

+0

Вы установили eclipse для форматирования исходного кода на странице 'save actions'? Объявление метода более 140 столбцов (imho) плохое; или, вы можете в конечном итоге снизить приоритет правила, связанного сонаром –

+0

@ ᴳᵁᴵᴰᴼ: Да, у нас есть действие сохранения, но и ручное вызов форматирования не будет работать. – Feroc

ответ

0

Найден ответ и простой обходной путь:

Eclipse, игнорирующая обертку линии, если только символ выше максимума является открывающей фигурной скобкой «{». Поэтому самое простое решение для нас, так как мы не хотим обновлять наш профиль: мы только увеличили правило длины строки в SonarQube до 143.

1

Это на окнах. Но я думаю, что eclipse должен иметь аналогичные варианты в linux. Eclipse-> Window-> Preference-> Java-> Code Style-> Formatter-> Линейная упаковка.

Вы также можете создать профиль в Formatter с определенными настройками для всего и поделиться своей командой.

enter image description here

+0

Разве это не то, что показывает мой скриншот? – Feroc

+0

Разве это не работает для вас? После настройки этого параметра вы можете перейти в проводник пакетов, щелкнуть правой кнопкой мыши по проекту и вызвать параметр source-> format. Это позволит форматировать и изменять ширину линии всех существующих исходных файлов в проекте. Вам не нужно вручную форматировать каждый файл. – Pranalee

+0

Не работает. На моем снимке экрана показаны параметры объявления метода с параметрами. Тот же параметр установлен для конструкторов. Ни безопасное действие, ни Source -> Format не обертывают линию. То же самое для 6 коллег, которые используют один и тот же профиль. – Feroc