java – 自定义Eclipse格式

我知道在哪里更改Formatter的首选项并更改那里的选项.我无法弄清楚如何让它按照我想要的方式进行格式化,如果可能的话,我希望能有一些帮助来格式化这种“我的”方式. 🙂

它目前设置为“必要时换行”,这似乎最接近我想要的.然而,它产生的结果并不是我想要的.
当前格式的示例看起来像

LOG.error(
    String.format(
        "Creating JSON Object from event array @ line number %d failed",
        key.get()), e);

这比那里好得多.我重新格式化了这段代码.在它看起来像之前

        LOG
                .error(
                        String
                                .format(
                                        "Creating JSON Object from event array @ line number %d failed",
                                        key.get()), e);

而且格式化遍及整个代码.是的,标签会准确地反映为代码中的内容.以前的开发必须有不同的设置……看起来这就是促使我编写代码的原因.进行调查和检查显示我的设置(默认)以生成第一个片段.如果这代表了所有代码,我可能会没事的.但自从我开始写作以来,我就是继续.

所以,我想要的.我希望这最终成为

LOG.error(String.format(
        "Creating JSON Object from event array @ line number %d failed",
        key.get()), e);

字符串被分解,因为它延伸到行长度并且key.get …因为它超过行长度而被破坏.字符串本身(如定位)超过行长度,这就是key.get …被删除一行的原因.

我对eclipse中处理这个问题的设置不太熟悉(今天感谢google发现它们)并且随机改变了一些东西,希望找到我正在寻找的东西并不是一个吸引人的选择.

显然,组件的长度将影响结果,因为起始空白区域也是如此.
在格式化操作LOG.error(String.Format(不长于行长度)的两个例子中.我不希望它分成两行.我改变什么来纠正它?(男人是一个这个简单问题的长篇帖子……呵呵)

更新:
我尝试按照下面的建议做了//我得到了以下结果

LOG.error(
        String.format(
                //
                "Creating JSON Object from event array @ line number %d failed",
                key.get()), e);

最佳答案 这个问题不是一个完整的答案,但是:强制Eclipse格式化程序打破界限的一种简单方法是假装插入注释.我有时会在换行符之前添加//,而Eclipse将不会还原它,同时按预期缩进下一行.

所以我试试这个:

LOG.error(String.format( //
        "Creating JSON Object from event array @ line number %d failed",
        key.get()), e);

根据您的首选线宽,也可能需要在第二行上的另一个//.

点赞