gpt4 book ai didi

maven-release-plugin - Maven版本插件和Windows换行符

转载 作者:行者123 更新时间:2023-12-03 12:17:54 24 4
gpt4 key购买 nike

当我尝试运行maven-release-plugin时,它会更改pom.xml文件中的版本。
在Maven发行之前,每行结尾都具有unix风格的<lf>,但是在我的Windows机器上运行它之后,该插件将文件中的每一行更改为<cr><lf>

我的问题是:

a)是否有一种方法可以告诉Maven保留所有内容或使用特定的行结尾

要么

b)是否有一种通用方法可以告诉窗口行尾应该是什么?即使是破解操作系统中某些内容的工具也被认为是有用的。

我看了一下https://issues.jfrog.org/jira/browse/BI-111,它说“已解决”,但我使用的是最新版本,因此对我不起作用。

最佳答案

有四种可能的解决方案。

  • 使用Maven组装插件

  • 我认为最好的办法是调查 Maven assembly plugin。它应该允许您更新行分隔符。有关详细信息,请参见 section“文件集”部分。
  • 使用PowerShell调用mvn

  • 作为临时的解决方法,可以使用PowerShell(开始->所有程序->附件-> Windows PowerShell)。像您那样调用maven,并在-D语句双引号周围添加了一些其他功能。 mvn assembly:assembly -P prod "-Dmaven.test.skip=true"。现在添加到此-Dline.separator =`n。这应该导致PowerShell添加转义的值。
  • 在pom更新之前,编写您自己的插件来覆盖"line.separator"

  • 按照 Maven Guide创建简单的插件。它需要做的就是覆盖值。将插件配置为在pom修改之前的阶段中执行。
    System.getProperties().setProperty("line.separator", "\n");
  • 在Linux VM中构建。

  • 有一个选项不能解决Windows兼容性问题,但应该可以解决您的核心问题。看一下创建小型VirtualBox Linux服务器。一个简单的NAT连接就足以访问Internet。在此计算机上安装Maven,Java等。在此基础上。因为是Linux,所以行分隔符应仅为'\ n'。 VM将需要256-512 MB的RAM和20 GB的存储空间(Linux +许多可能的Maven依赖项)。如果最终喜欢它,甚至可以扩展它以容纳像Jenkins这样的持续集成产品。

    关于maven-release-plugin - Maven版本插件和Windows换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11868590/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com