【问题标题】:Maven (multimodule project) - Copy file between modulesMaven(多模块项目) - 在模块之间复制文件
【发布时间】:2017-10-18 07:03:39
【问题描述】:

我有一个多模块maven项目,如下:

module: project-assembly;
module: project-implementation;
module: project-application;
module: project-web;

在 project-assembly/src/main/assembly/config 我的项目有重要的配置文件,我需要在构建过程中将它们复制到 project-web 模块到 WEB-INF 文件夹中。

更重要的是,这必须通过特定的配置文件来完成。

例如,有一个“x”配置文件,这是需要此文件才能成功打包项目的人。

有没有办法做到这一点?谢谢

【问题讨论】:

  • 最简单的解决办法是将config目录放到src/main/resources下的project-web模块中?

标签: java maven file copy multi-module


【解决方案1】:

您可以使用 maven-antrun-plugin 在任意文件夹之间复制文件(ant copy)。但我强烈建议不要在模块之间复制。令人困惑甚至更多:构建顺序或构建的模块子集可能会发生变化(取决于依赖项以及命令行参数)。对于此复制,您需要确保构建按照定义的顺序进行。

考虑以其他方式共享配置。

【讨论】:

  • 很遗憾,我不能更改此结构...您能举个例子吗?
【解决方案2】:

你可以使用maven资源插件-

<properties> 
<othermodule-dir>...</othermodule-dir>

</properties>

<build>
 <resources>
    <resource>
      <!-- package thumbnail -->
      <directory>${sourceDir}</directory>
      <targetPath>${othermodule-dir}</targetPath>
      <filtering>true</filtering>
    </resource>
  </resources>
.
.
</build>

【讨论】:

  • 感谢您的回答,需要的个人资料设置如何?
猜你喜欢
  • 2013-01-21
  • 2014-09-14
  • 2016-06-12
  • 2018-02-06
  • 1970-01-01
  • 1970-01-01
  • 2011-11-24
  • 2021-02-09
  • 2011-01-04
相关资源
最近更新 更多