【问题标题】:How to copy resources from other module to specific location ? (maven)如何将资源从其他模块复制到特定位置? (行家)
【发布时间】:2010-06-02 11:04:35
【问题描述】:

我有一个由 Maven 管理的项目,其中包含一些模块。 一个模块在“src/main/resources/native”目录中包含一些本地代码。 第二个模块将所有相关模块打包到一个 WAR 文件中。

问题来了:如何将第一个模块中的“native/”目录(及其子目录)复制到第二个模块中的 WEB-INF/native 目录?

我找到了一个copy resources 插件,但它似乎不是我想要的。 (它复制同一个模块内的目录,但我想要跨模块复制)

【问题讨论】:

    标签: maven-2 maven


    【解决方案1】:

    这对于dependency:unpack(我将在prepare-package 阶段绑定)和适当的excludes/includes 是可行的。请参阅Unpacking specific artifacts 示例。

    【讨论】:

    • 谢谢!而且...我还发现递归目录应该写成:“native/**\/*.*”...太麻烦了...
    【解决方案2】:

    maven 中模块的目标是将它们彼此分离。恐怕在 maven 内部不会有令人满意的解决方案,因为这违反了规定。

    一种解决方案可能是使用您的资源创建一个战争档案,并依靠它来构建您的最终战争。

    我通过添加依赖项将骆驼网络资源用于项目:

        <dependency>
            <groupId>org.apache.camel</groupId>
            <artifactId>camel-web</artifactId>
            <version>${camel.version}</version>
            <type>war</type>
            <scope>runtime</scope>
        </dependency>
    

    战争资源与我的网络资源合并。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-02-14
      • 1970-01-01
      • 2018-09-15
      • 2015-03-03
      • 1970-01-01
      • 1970-01-01
      • 2011-08-10
      相关资源
      最近更新 更多