Java 自定义Eclipse格式

Java 自定义Eclipse格式,java,eclipse,code-formatting,Java,Eclipse,Code Formatting,我知道在哪里更改格式化程序的首选项,并在那里更改选项。我不知道如何让它以我想要的方式格式化,如果可能的话,我需要一些帮助来格式化这个“我的”方式。:) 它目前设置为“必要时包装”,这似乎是最接近我想要的。然而,它产生的结果并不是我想要的。 当前格式的示例如下所示 LOG.error( String.format( "Creating JSON Object from event array @ line number %d failed", key.get

我知道在哪里更改格式化程序的首选项,并在那里更改选项。我不知道如何让它以我想要的方式格式化,如果可能的话,我需要一些帮助来格式化这个“我的”方式。:)

它目前设置为“必要时包装”,这似乎是最接近我想要的。然而,它产生的结果并不是我想要的。 当前格式的示例如下所示

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);
字符串
被打断是因为它扩展到了行长度,而
键。get…
被打断是因为它超过了行长度。字符串本身(定位时)超过了行长度,这就是为什么
键.get…
会被删除一行的原因

我对eclipse中处理这个问题的设置还不够熟悉(多亏了谷歌,今天才发现了这些设置),随机改变一些东西,希望找到我想要的东西,这并不是一个吸引人的选择

很明显,组件的长度将影响结果,起始空白也是如此。
在格式化操作的两个示例中,
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);
根据您喜欢的线宽,第二行可能还需要另一个
/

您需要编辑 缩进要有一个制表符大小:4

在“换行”选项卡上

  • 将包装线的默认缩进设置为1
  • 在函数调用下,它应该是
    • 必要时进行包裹(5/5)
    • 列上的缩进(5/5)
我从Java约定(内置)开始,只做了那些更改,结果它变了

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


谢谢你的意见。看来我不能完全按照我的要求得到它。只是灵活性似乎不存在

我还有其他几行帮助指导我如何确定设置

对于参数,我在必要时进行了换行,并在列上缩进。
对于限定调用,我将其设置为“不包装”

其余的是不太常见的情况。我将它们设置为在必要时换行,并按一个缩进。我为这些设置了几个实例,看起来是按照我喜欢的方式设置的

对于指定的行,我得到的结果与Digitalxero显示的结果相同。如果我使用Jean-Philippe Pellet提到的
/
,它现在将按照他显示的那样执行。
我不打算使用
/
(虽然我喜欢这个建议),因为我不太关心格式,所以不会将
/
分散到整个代码中


总的来说,这些设置使它达到了一个临界点,即每件事都能在我想要的地方工作。

这不是100%相关,但您是否有可能使用SLF4J?
LOG.error(String.format("Creating JSON Object from event array @ line number %d failed",
                        key.get()), e);