【问题标题】:Maven - How to replace value in any file in other location?Maven - 如何替换其他位置的任何文件中的值?
【发布时间】:2020-09-06 18:36:43
【问题描述】:

我必须替换文件中的值:test.xml 这个文件位置是:src/main/app。

有可能吗?

【问题讨论】:

  • 你想达到什么目的?动态更改应用程序的来源并不是一个好主意。它用于构建应用程序,并且您可能无法更改它(取决于您的需要)。 mavne 也用于基于此源构建应用程序。不改变来源。可能您需要其他工具或方法。
  • 因为在这个 test.xml 文件中我已经设置了配置文件 (test.properties) 的路径。这取决于应用程序名称。应用程序 test1 在 src/main/app 中有 test1.xml 文件和标签

标签: maven mule mulesoft


【解决方案1】:

可以根据 ${app.name} 更改属性。无需更改流程即可更改属性文件。

https://simpleflatservice.com/mule4/Properties.html

【讨论】:

  • 问题是我的应用程序是其他应用程序的模板。在 maven 命令中,我想给新应用程序命名并在 .xml 文件中设置此名称
  • 我要做的是拥有一个 Mule Deployable Archive(只有一个应用程序)并将其部署到运行时,使用不同的名称,因此它们使用不同的配置。简而言之(由于许可证成本),我们只有一个测试环境,我们运行同一个应用程序,名称为 app-dev、app-qa、app-prep、app-uat 等。同一个应用程序(不是模板)运行同一台服务器上的不同环境。让我知道 maven 是否还有其他理由“从模板构建”。
  • @damianoo 应用程序可以使用 Alex 解释的属性进行参数化,因此无需实际修改 XML 配置。在构建时修改应用程序目前听起来不是一个好的做法,尽管很多年前它在 Java Web 应用程序(战争)中很流行。您可以重命名应用程序可部署文件,使其以名称部署。除非有其他问题,否则我认为不需要修改应用程序。也许你可以澄清为什么这个解决方案是不可接受的。
  • 我只想在创建包时替换 app.name 或 project.name ... 我想使用 mvn clean package -Dname=test 之类的 maven 命令,其中 name 将替换一些应用程序位置以获取新应用程序名称。我在 pom antrun 插件中设置 但这不起作用
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-09-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多