Plugin Maven pour télécharger automatiquement le binaire lm-cli depuis les releases GitHub.
- Télécharge le binaire
lm-clidepuis https://github.com/lmlouis/lm-cli/releases - Installe le binaire dans
target/lm-cli-bin/lm-cli - Rend le fichier exécutable
Pour utiliser ce plugin dans tes projets Maven, commence par l'installer localement :
git clone https://github.com/lmlouis/lm-cli-plugin.git
cd lm-cli-plugin
mvn clean installAjoute distributionManagement à la fin du pom.xml:
<distributionManagement>
<repository>
<id>github</id>
<url>https://maven.pkg.github.com/lmlouis/lm-cli-plugin</url>
</repository>
</distributionManagement>edite le fichier settings.xml
idea ~/.m2/settings.xml en ajoutant le ghp Personal Access Token de ton github
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 https://maven.apache.org/xsd/settings-1.0.0.xsd">
<servers>
<server>
<id>github</id>
<username>lmlouis</username>
<password>ghp Personal Access Token</password>
</server>
</servers>
</settings>deploi le package avec la commande maven
mvn clean deployAjoute ce plugin dans la section de ton pom.xml :
<build>
<plugins>
<plugin>
<groupId>dev.lmlouis</groupId>
<artifactId>lm-cli-plugin</artifactId>
<version>1.0.5</version>
<executions>
<execution>
<id>install-lm-cli</id>
<goals>
<goal>install-lm-cli</goal>
</goals>
<phase>initialize</phase>
<configuration>
<!-- Facultatif : tu peux forcer une version spécifique ici -->
<version>latest</version>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>Le ZIP est téléchargé dans outputDirectory/lm-cli-source/lm-cli-.zip. Le ZIP est extrait dans ce même dossier lm-cli-source. Le fichier ZIP est supprimé après extraction. La méthode newFile protège contre l’attaque Zip Slip (extraction hors dossier prévu). Le plugin logue chaque étape.