2016-03-11 4 views
0

Я работаю в проекте Java, в котором большая часть кода неправильно отформатирована. Я пытаюсь найти инструмент, который выполняет форматирование в коде, т. Е. Есть ли какой-либо инструмент для форматирования java-кода, который был перенесен в репозиторий?инструмент для форматирования java-кода в репозитории без использования IDE

+0

На основании каких правил вы хотите отформатировать? Будет ли использовать Eclipse из командной строки? – SubOptimal

+0

Вы можете посмотреть на использование инструмента, такого как 'astyle'; см .: http://astyle.sourceforge.net/ – Castaglia

+0

Вы используете maven в своем проекте? Если это так, я могу дать вам выбор. – malaguna

ответ

2

Существует плагин maven под названием formatter-maven-plugin, который вы можете найти here. С помощью этого плагина вы можете использовать задачу форматирования следующим образом:

mvn java-formatter:format 

Для того, чтобы использовать эту цель, которую вы должны настроить pom.xml. В этом page у вас есть информация о том, как использовать его, но простая конфигурация плагина может быть следующим:

<plugin> 
    <groupId>net.revelc.code</groupId> 
    <artifactId>formatter-maven-plugin</artifactId> 
    <version>0.5.3-SNAPSHOT</version> 
    <configuration> 
     ... your specific options here ... 
    </configuration> 
</plugin> 
0

Для тех, кто не хочет использовать Maven или только хочет форматировать набор файлов и установлены Eclipse. Они могли бы использовать Eclipse, форматировщик из командной строки, как

для Windows (одна линия)

%ECLIPSE_HOME%\eclipsec.exe -vm "%JAVA_HOME%\jre\bin\server\jvm.dll" \ 
-nosplash -consolelog -application org.eclipse.jdt.core.JavaCodeFormatter \ 
-verbose -config .settings/org.eclipse.jdt.core.prefs \ 
Foo.java Bar.java 

Это решение использует правила форматирования, определенные на уровне проекта Eclipse. Затем файл .settings/org.eclipse.jdt.core.prefs содержит записи для org.eclipse.jdt.core.formatter.*. Он не будет работать, если правила форматирования определены на уровне рабочей области.

Я предполагаю, что вы хотите запустить форматирование только один раз. В этом случае вы можете включить до выполнения Enable project specific settings свойства для Java code style -> Formatter. Только подтвердите этот параметр, нажав OK, сохраните правила рабочей области в файле org.eclipse.jdt.core.prefs. Если вы отключите этот параметр после выполнения, правила будут удалены.

+0

Спасибо SubOptimal. Что делать, если я использую собственный форматтер. потому что мы импортируем formatter как xml. – Shriram

+0

@ Шрирам Посмотрите на мой обновленный ответ. Я добавляю краткое описание того, как можно использовать правила форматирования в Eclipse. Если у вас есть файл XML с совместимым с Eclipse форматом, вы можете импортировать этот файл в Eclipse. – SubOptimal

0

Наш Java Formatter - это автономный и скриптовый инструмент, который будет отформатировать отдельные файлы или полные наборы файлов, как определено в файле проекта.

Основан на понятном для пользователя синтаксическом анализаторе и симпатичном принтере; он не может сломать ваш код.

Учитывая, что форматирование файла один раз и форматирование его снова приведет к такому же результату, можно задаться вопросом, должен ли быть переключатель «один раз один раз». Форматирование выполняется достаточно быстро, так что делать это один раз перед каждой проверкой не повредит, даже если файл уже хорошо отформатирован.