Я работаю в проекте Java, в котором большая часть кода неправильно отформатирована. Я пытаюсь найти инструмент, который выполняет форматирование в коде, т. Е. Есть ли какой-либо инструмент для форматирования java-кода, который был перенесен в репозиторий?инструмент для форматирования java-кода в репозитории без использования IDE
ответ
Существует плагин 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>
Для тех, кто не хочет использовать 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
. Если вы отключите этот параметр после выполнения, правила будут удалены.
Спасибо SubOptimal. Что делать, если я использую собственный форматтер. потому что мы импортируем formatter как xml. – Shriram
@ Шрирам Посмотрите на мой обновленный ответ. Я добавляю краткое описание того, как можно использовать правила форматирования в Eclipse. Если у вас есть файл XML с совместимым с Eclipse форматом, вы можете импортировать этот файл в Eclipse. – SubOptimal
Наш Java Formatter - это автономный и скриптовый инструмент, который будет отформатировать отдельные файлы или полные наборы файлов, как определено в файле проекта.
Основан на понятном для пользователя синтаксическом анализаторе и симпатичном принтере; он не может сломать ваш код.
Учитывая, что форматирование файла один раз и форматирование его снова приведет к такому же результату, можно задаться вопросом, должен ли быть переключатель «один раз один раз». Форматирование выполняется достаточно быстро, так что делать это один раз перед каждой проверкой не повредит, даже если файл уже хорошо отформатирован.
На основании каких правил вы хотите отформатировать? Будет ли использовать Eclipse из командной строки? – SubOptimal
Вы можете посмотреть на использование инструмента, такого как 'astyle'; см .: http://astyle.sourceforge.net/ – Castaglia
Вы используете maven в своем проекте? Если это так, я могу дать вам выбор. – malaguna