Maven 2 assemblée avec des dépendances: pot en vertu de portée “système” de ne pas inclus

Je suis en utilisant maven-assembly plugin pour créer un jar de mon application, y compris ses dépendances comme suit:

<assembly>
    <id>macosx</id>
    <formats>
       <format>tar.gz</format>
       <format>dir</format>
    </formats>
    <dependencySets>
        <dependencySet>
            <includes>
                <include>*:jar</include>
            </includes>
            <outputDirectory>lib</outputDirectory>
        </dependencySet>
    </dependencySets>
</assembly>

(J'ai omis quelques autres trucs qui n'est pas liée à la question)

Jusqu'à présent cela a bien fonctionné parce qu'il crée une lib répertoire avec toutes les dépendances. Cependant, j'ai récemment ajouté une nouvelle dépendance dont la portée est system, et il ne copie pas le lib répertoire de sortie. quelque chose doit m'échapper de base ici, j'ai donc appeler à l'aide.

La dépendance que j'ai juste ajouté est:

<dependency>
  <groupId>sourceforge.jchart2d</groupId>
  <artifactId>jchart2d</artifactId>
  <version>3.1.0</version>
  <scope>system</scope>
  <systemPath>${project.basedir}/external/jchart2d-3.1.0.jar</systemPath>
</dependency>

La seule façon que j'ai été en mesure d'inclure cette dépendance a été par adjonction de l'élément d'assemblage:

<files>
    <file>
        <source>external/jchart2d-3.1.0.jar</source>
        <outputDirectory>lib</outputDirectory>
    </file>
</files>

Cependant, ce qui m'oblige à changer de pom et de l'assemblée fichier à chaque fois que ce pot est renommé, si jamais. Aussi, il semble tout simplement faux.

J'ai essayé avec <scope>runtime</scope> dans le dependencySets et <include>sourceforge.jchart2d:jchart2d</include> avec pas de chance.

Alors, comment avez-vous inclure un system étendue de pot de votre fichier d'assembly dans maven 2?

Merci beaucoup

  • Le champ "runtime" n'aurait pas changé le résultat, parce que c'est la valeur par défaut.
  • J'ai juste poussé jchart2d à Maven Central! sourceforge.net/news/?group_id=50440 - profitez-en!