简体   繁体   English

将META-INF / services文件与Maven Assembly插件合并

[英]Merging META-INF/services files with Maven Assembly plugin

I am looking for a way to merge META-INF/services files, eg META-INF/services/javax.ws.rs.ext.Providers , when building jar-with-dependencies using Maven Assembly plugin. 我正在寻找一种方法来合并META-INF/services文件,例如META-INF/services/javax.ws.rs.ext.Providers ,当使用Maven Assembly插件构建jar-with-dependencies I have found answers showing how to do that using Maven Shade plugin. 我找到了答案,展示了如何使用Maven Shade插件。 Unfortunately, we are extensively using Mave Assembly plugin already and it is unclear how we could plug Maven Shade plugin...in. 不幸的是,我们已经广泛使用Mave Assembly插件,目前还不清楚我们如何插入Maven Shade插件......

It turns out that some versions of Maven Assembly plugin can merge these files: 事实证明,某些版本的Maven Assembly插件可以合并这些文件:

<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.0.0 http://maven.apache.org/xsd/assembly-2.0.0.xsd">
    <id>jar-with-dependencies</id>
    <formats>
        <format>jar</format>
    </formats>
    <!-- ... -->
    <containerDescriptorHandlers>
        <containerDescriptorHandler>
            <handlerName>metaInf-services</handlerName>
        </containerDescriptorHandler>
        <containerDescriptorHandler>
            <handlerName>metaInf-spring</handlerName>
        </containerDescriptorHandler>
        <containerDescriptorHandler>
            <handlerName>plexus</handlerName>
        </containerDescriptorHandler>
    </containerDescriptorHandlers>
</assembly>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM