Visualizzazione dei risultati da 1 a 8 su 8

Hybrid View

  1. #1
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da fermat Visualizza il messaggio
    si parliao di vertx.
    maven-shade-plugin c'è, il progetto l'ho generato da dove dici tu.
    Ok, se ho capito bene vuoi rimuovere i file sotto META-INF relativi alla signature.
    Quindi puoi utilizzare il DontIncludeResourceTransformer.

    Non ho modo di provare ma dovrebbe bastare aggiungere questo <transformer> (in <transformers>, chiaramente):

    codice:
    <transformer implementation="org.apache.maven.plugins.shade.resource.DontIncludeResourceTransformer">
        <resource>META-INF/*.SF</resource>
        <resource>META-INF/*.RSA</resource>
        <resource>META-INF/*.DSA</resource>
    </transformer>
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Ho voluto fare una prova reale, perché non ero convinto di quello che avevo scritto. E infatti ... come scritto sopra non funziona.


    Così di per sé funziona:
    codice:
    <transformer implementation="org.apache.maven.plugins.shade.resource.DontIncludeResourceTransformer">
        <resources>
            <resource>.DSA</resource>
            <resource>.RSA</resource>
            <resource>.SF</resource>
        </resources>
    </transformer>

    Il <transformer> accetta 1 solo <resource> oppure 1 <resources> con dentro dei <resource>.
    E inoltre le risorse NON accettano wildcard o che altro. Ho verificato il sorgente del maven-shade-plugin, il matching avviene con il endsWith() di String. Quindi si può mettere solo una parte fissa "finale". Ovviamente così è limitato.


    In alternativa, si può usare il <filters> (dentro <configuration> ) che è più generale.
    codice:
    <filters>
        <filter>
            <artifact>*:*</artifact>
            <excludes>
                <exclude>META-INF/*.DSA</exclude>
                <exclude>META-INF/*.RSA</exclude>
                <exclude>META-INF/*.SF</exclude>
            </excludes>
        </filter>
    </filters>

    Anche questo, provato, funziona.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.