С помощью Eclipse код форматирования от программы

недавно я написал некоторые инструменты, которые помогают мне генерировать Java-код для того, что в противном случае было бы длинными и утомительными задачами. Я использую freemarker для написания шаблонов. Однако все пробелы в шаблонах сохраняются в выходных данных, что приводит к довольно грязному коду. Я мог бы удалить отступы из своих шаблонов, чтобы исправить это, но это делает мои шаблоны довольно недостижимыми.

простой пример шаблона:

public class MyTestClass
{
    <#list properties as p>
        private String ${p.name};
    </#list>
}

мой шаблон красиво отформатирован, но мой код выходит так:

public class MyTestClass
{
        private String prop1;
        private String prop2;
        private String prop3;
}

отступ немного слишком много, это должно быть:

public class MyTestClass
{
    private String prop1;
    private String prop2;
    private String prop3;
}

чтобы выполнить это, я должен удалить отступ из моего шаблона следующим образом:

public class MyTestClass
{
    <#list properties as p>
    private String ${p.name};
    </#list>
}

для этого простого случая на самом деле не проблема удалить отступ из моего шаблона, но вы можете себе представить, что сложные шаблоны становятся совершенно нечитаемыми.

С одной стороны, я действительно хочу, чтобы мой код был красиво отформатирован, но с другой стороны, я хотел бы, чтобы мой шаблоны должны быть красиво отформатированы. Я использую Eclipse как IDE, со встроенным форматированием, полностью настроенным на мои (и мои команды) пожелания. Было бы здорово, если бы я мог каким-то образом генерировать код из шаблонов freemarker и форматировать его вывод с помощью форматирования Eclipse.

Я могу, конечно, запустить форматер вручную после генерации моего кода, но я действительно хочу автоматизировать этот процесс.

Итак, короче говоря, кто-нибудь знает, как я могу использовать Eclipse форматирования кода в Java-код?

1 ответов


Если вы хотите использовать форматер Eclipse из своего собственного кода java, я предлагаю вам взглянуть на the Maven в Java для форматирования плагин.

это плагин maven, который можно использовать для форматирования исходного кода на основе файлов настроек форматирования кода Eclipse.

Если вы не хотите использовать maven, но хотите встроить код форматирования в свой собственный код, взгляните на FormatterMojo. Он содержит код, который запускает форматер кода Eclipse (используя библиотеки Eclipse)

все это бесплатно и с открытым исходным кодом.