Vous ne devriez pas avoir besoin d'accéder aux fichiers spécifiques à Maven pour obtenir les informations de version d'une bibliothèque/classe donnée.
Vous pouvez simplement utiliser getClass().getPackage().getImplementationVersion()
pour obtenir les informations de version stockées dans un fichier .jar. MANIFEST.MF
. Heureusement, Maven est assez intelligent Malheureusement, Maven n'écrit pas les informations correctes dans le manifeste par défaut !
Au lieu de cela, il faut modifier le <archive>
de l'élément de configuration de l maven-jar-plugin
pour fixer addDefaultImplementationEntries
y addDefaultSpecificationEntries
a true
comme ceci :
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
<addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
</manifest>
</archive>
</configuration>
</plugin>
Idéalement, cette configuration devrait être placée dans la société pom
ou une autre base-pom.
Une documentation détaillée de la <archive>
se trouve dans l'élément Documentation sur les archives Maven .
0 votes
Voir stackoverflow.com/a/26589696/52176