我想确保项目中的CRLF(Windows风格)行分隔符。我正在检查几种替代方法,但不确定哪一种是最佳选择。

所需的行为:

如果文件不是CRLF,则IntelliJ IDEA会在底部显示:
maven - 在我的项目中强制CRLF行分隔符-LMLPHP

我想要我的Maven配置文件,比如说mvn clean install -P测试失败,并说类似“无效的行分隔符,而不是CRLF”

非常感谢。

最佳答案

我认为,除非有人创建了插件来执行此操作,否则由于项目文件中无效的行分隔符而导致Maven构建失败的可能性不大。但是,由于这个原因,您可以在Intellij IDEA中将代码检查配置为失败。这是引发这种故障的方法:

  • 导航到文件->设置->编辑器->检查->不一致的行分隔符,然后选中不一致的行分隔符,然后从严重性ojit_r的下拉列表中选择错误:

    maven - 在我的项目中强制CRLF行分隔符-LMLPHP
  • 导航到文件->设置->编辑器->代码样式,并通过从行分隔符下拉列表(如果尚未设置)中选择 Windows(\r\n)来指定默认行分隔符。
  • 使项目中某些打开的文件的行分隔符设置无效。例如:文件->行分隔符-> CR-经典Mac(\r)
  • 对您的项目进行检查(分析->检查代码->整个项目),现在应该出现错误:

  • maven - 在我的项目中强制CRLF行分隔符-LMLPHP

    JetBrains有一个open bug ticket,它会根据检查错误来强制编译失败,因此这种方法并非您所要求的。但是在没有任何基于Maven的解决方案的情况下,您可能会最好。有关更多信息,请参阅JetBrains的Code Inspection文档。

    另一种可能的方法是查看TeamCity,这是另一个用于持续集成的JetBrains工具。我没有使用过它,但是也许它可以让您在出现检查错误时配置失败(尽管从快速查看他们的文档中我看不到如何)。

    更新:

    看来TeamCity毕竟值得一看。其documentation on Build Failure Conditions指出:

    关于maven - 在我的项目中强制CRLF行分隔符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48518696/

    10-13 08:39