4

出于一致性原因,我想在我们项目的 Java 源代码中强制执行 Unix 样式的行尾 (\n)。由于我们中的许多人都在 Windows 下工作,因此大多数 IDE 默认配置为使用 Windows 样式的行尾 (\r\n)。每次配置新工作区时,我们都会尝试更改该设置,但由于某些原因,某些文件是使用 Windows 行尾提交的。

是否有任何 Maven 配置或插件可以帮助我们强制执行 Unix 样式的行尾,或者至少警告我们 Windows 样式的文件?

我首先考虑的是 PMD 或 Checkstyle,但它似乎并不那么简单。我还检查了 Maven Enforcer Plugin,但我不认为它是开箱即用的。我应该能够创建自己的规则,但我想确保我不会重新发明轮子:)

4

3 回答 3

5

使用 Checkstyle,我们在项目中成功地使用了它来强制 Unix 行尾。

您可以使用正则表达式来执行此操作(Windows 行结尾是 \r\n,但您可能知道这一点)。

于 2013-02-21T14:08:42.347 回答
3

我们使用以下 Checkstyle 配置来强制 UNIX 行尾:

<module name="RegexpMultiline">
    <property name="format" value="\r\n"/>
    <property name="maximum" value="0"/>
    <property name="message" value="Do not use Windows line endings"/>
</module>
于 2013-08-29T14:27:48.767 回答
2

我不知道如何检查换行符,但我知道如何自动修复它(我相信这会更好。)

ANT 有这样的任务,maven 可以运行 ant 任务。看看这里了解详情

于 2013-02-21T13:53:33.410 回答