IntelliJ google-java-format插件与IntelliJ java-google-style.xml-有什么关系?

代码风格。这是一个有争议的话题,每个人似乎都有自己的观点,但似乎没有人有什么灵丹妙药。

最近,我参加了一场关于如何格式化链式方法(在这种情况下是Java stream())的讨论。

这是此讨论中的两个示例:

选项A:


obj.stream()
    .map(...)
    .distinct(...)
    .collect(...);

选项B:


obj.stream().map(...).distinct(...).collect(...);

就个人而言,我觉得选项A读起来很不错,但并不是每个人都有相同的感觉。这样做很好,但是有一套规则和限制会很好,它将一劳永逸地解决这场辩论。

幸运的是,我们决定使用样式指南,即Google Java样式指南
拥有样式指南是一件好事,但如果没有真正执行规则,则只需参考样式指南。此外,为了使生活更轻松,总是要收费,将所选样式与IDE功能(例如自动格式化)结合起来总是很高兴的。

对于IntelliJ,我在这里看到两个选项。它要么安装google-java-format插件,要么导入java-google-style.xml

可以认为这两个选项的格式都相同,但不幸的是事实并非如此。

例如,该插件将像上面显示的选项A一样格​​式化流,但是导入的XML将与选项B一起使用。

此外,如果您使用的是Spring,那么XML将以这种格式生成注释:


@Autowired
private Entity entity; 

虽然插件会将其格式化为以下格式:


@Autowired private Entity entity;

这些只是几个示例,但是还有许多其他差异。 XML和插件都由Google(或至少在其GitHub组织下)维护,这让我很惊讶。

因此,这留下了一些未解决的问题:

  • 这应该是那样吗?
  • IntelliJ或XML的格式在两个选项之间差异如此之大
  • 可能是一个问题吗?哪个是最接近实际的Google样式指南?
  • 是否有其他工具可以可靠地对Java进行可靠的代码格式化?

就我个人而言,我觉得离插件更近了。这主要是因为它似乎更紧,几乎没有自由的不同风格。但是是不是太紧了?

原文链接: https://dev.to//tschaka1904/intellij-google-java-format-plugin-vs-intellij-java-google-style-xml-what-s-the-deal-197b

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值